Gráfico quantil-quantil em Python

Muhammad Maisam Abbas 15 fevereiro 2024
  1. Gráfico quantil-quantil com o pacote statsmodels em Python
  2. Gráfico quantil-quantil com o pacote openturns em Python
Gráfico quantil-quantil em Python

Este tutorial irá apresentar os métodos para desenhar gráficos quantil-quantis em Python.

Gráfico quantil-quantil com o pacote statsmodels em Python

Um gráfico quantil-quantil é usado para avaliar se nossos dados estão em conformidade com uma distribuição particular ou não. Ele pode ser usado para verificar se o conjunto de dados fornecido é normalmente distribuído ou não. Podemos usar o pacote statsmodels para traçar um gráfico quantil-quantil em Python. O comando para instalar statsmodels é dado abaixo.

pip install statsmodels

A função qqplot() dentro do pacote statsmodels traça gráficos quantil-quantil. Esta função pega nossos dados e o tipo de linha a ser desenhada. O trecho de código a seguir nos mostra como plotar um gráfico quantil-quantil com o pacote statsmodels.

import numpy as np
import statsmodels.api as smi
import pylab

sample_data = np.random.normal(0, 1, 1000)

smi.qqplot(sample_data, line="r")
pylab.show()

Produção:

python qq plot com o pacote statsmodels

Traçamos um gráfico quantil-quantil com a função smi.qqplot(sample_data, line = "r") no pacote statsmodels no código acima. Geramos nossos dados normais contendo 1000 entradas com a função sample_data = np.random.normal(0,1, 1000). No final, usamos o pacote pylab para exibir nosso gráfico com a função pylab.show().

Este método nos dá controle completo sobre o tipo de linha de referência a ser traçada. No gráfico acima, definimos a linha de referência como uma linha de regressão.

Gráfico quantil-quantil com o pacote openturns em Python

Outro método para traçar um gráfico quantil-quantil em Python é usando o pacote openturns. É um pacote externo, portanto, precisamos instalá-lo antes de usá-lo em nosso código. O comando para instalar o pacote openturns é fornecido abaixo.

pip install openturns

A função VisualTest.DrawQQplot() é usada para traçar gráficos quantil-quantil dentro do pacote openturns. O primeiro parâmetro desta função precisa ser um dado de amostra; o segundo parâmetro pode ser outro dado de amostra ou uma distribuição seguida por outro terceiro parâmetro especificando o número de pontos. Para este exemplo, vamos representar graficamente uma amostra de distribuição normal em relação a uma amostra de distribuição uniforme. O trecho de código a seguir nos mostra como plotar um gráfico quantil-quantil com o pacote openturns.

import openturns as ot

x = ot.Normal().getSample(1000000)
y = ot.Uniform().getSample(1000000)
g = ot.VisualTest.DrawQQplot(x, y)
g

Produção:

python qq plot com o pacote openturns

Testamos uma amostra de uma distribuição normal com uma amostra de uma distribuição uniforme com a função VisualTest.DrawQQplot(x, y) no pacote openturns no código acima. Geramos nossos dados de amostra da distribuição normal contendo um milhão de entradas com x = ot.Normal().getSample(1000000). Geramos nossos dados de amostra a partir da distribuição uniforme contendo um milhão de entradas com y = ot.Uniform().getSample(1000000).

Este método não fornece controle sobre a linha de referência / teste.

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn

Artigo relacionado - Python Graph