Coeficiente de correlación de gráfico de probabilidad

El coeficiente de correlación de diagrama de probabilidad (PPCC) es una técnica gráfica para identificar el parámetro de forma que mejor describe el conjunto de datos. La mayor parte del análisis estadístico se ha realizado asumiendo la forma de la distribución en mente. Sin embargo, estas suposiciones pueden ser cuestionadas porque a veces las distribuciones pueden tener formas muy diferentes dependiendo del parámetro de forma. Por lo tanto, es mejor encontrar el parámetro de forma como parte del análisis, para que podamos estar más seguros acerca de la distribución de la población.

El gráfico PPCC se forma usando los siguientes ejes:

  • Eje vertical : Coeficiente de correlación del diagrama de probabilidad
  • Eje horizontal : valor del parámetro de forma

El objetivo principal de la gráfica PPCC es primero encontrar un buen valor del parámetro de forma. Además de calcular el parámetro de forma de la distribución, el gráfico PPCC se puede utilizar para decidir qué familia distribucional es la más adecuada.

El gráfico PPCC responde a las siguientes preguntas:

  • a

La gráfica PPCC Turquía-lambda, con parámetro de forma λ, es particularmente útil para distribuciones simétricas. Indica si una distribución es de cola corta o larga y además puede indicar varias distribuciones comunes. Específicamente,

  • λ =-1, la distribución es aproximadamente de Cauchy .
  • λ = 0, la distribución es exactamente logística.
  • λ = 0,14, la distribución es aproximadamente normal.
  • λ = 0,5, la distribución tiene forma de U.
  • λ = 1, la distribución es exactamente uniforme.

Si el gráfico PPCC de Turquía-Lambda da un valor máximo = 0,14, entonces podemos concluir que la distribución normal es una buena aproximación para los datos. Si el valor máximo es < 0,14, significa que una distribución de cola larga, como la exponencial doble o la logística, sería una mejor opción. Si el valor máximo es -1, implica una distribución de cola muy larga como la de Cauchy. Si el valor máximo es > 0,14, implica una distribución de cola muy corta, como Beta o Uniforme.

Implementación

  • En esta implementación, generaremos diferentes distribuciones y verificaremos su valor de parámetro de forma de Turquía-Lambda, y trazaremos gráficos de PPCC. Estoy usando Google Colaboratory, que contiene algunas bibliotecas preinstaladas como scipy, numpy, statsmodel, seaborn, etc. Sin embargo, estas bibliotecas se pueden instalar fácilmente usando pip install en el entorno local.

Python3

# import libraries
import numpy as np
import matplotlib.pyplot as plt
import scipy.stats as sc
import seaborn as sns
  
# generate different distributions
sample_size = 10000 
standard_norm = np.random.normal(size=sample_size)
cauchy_dist = sc.cauchy.rvs(loc=1, scale=10, size=sample_size)
logistic_dist = np.random.logistic(size=sample_size)
uniform_dist = np.random.uniform(size= sample_size)
beta_dist = np.random.beta(a=1, b=1, size=sample_size)
  
# Normal Distribution
fig, ax = plt.subplots(1, 2, figsize=(12, 7))
sns.histplot(standard_norm,kde=True, color ='blue',ax=ax[0])
sc.ppcc_plot(standard_norm, -5,5, plot=ax[1])
shape_param_normal = sc.ppcc_max(standard_norm)
ax[1].vlines(shape_param_normal,0,1, colors='red')
print("shape parameter of normal distribution is ", shape_param_normal)
  
# Cauchy Distribution
fig, ax = plt.subplots(1, 2, figsize=(12, 7))
sns.histplot(cauchy_dist, color ='blue',ax=ax[0])
ax[0].set_xlim(-40,40)
sc.ppcc_plot(cauchy_dist, -5,5, plot=ax[1])
shape_param_cauchy = sc.ppcc_max(cauchy_dist)
ax[1].vlines(shape_param_cauchy,0,1, colors='red')
print('shape parameter of cauchy distribution is ',shape_param_cauchy)
  
# Logistic Distribution
fig, ax = plt.subplots(1, 2, figsize=(12, 7))
sns.histplot(logistic_dist, color ='blue',ax=ax[0])
sc.ppcc_plot(logistic_dist, -5,5, plot=ax[1])
shape_param_logistic = sc.ppcc_max(logistic_dist)
ax[1].vlines(shape_param_logistic,0,1, colors='red')
print("shape parameter of logistic is ",shape_param_logistic)
  
# Uniform Distribution
fig, ax = plt.subplots(1, 2, figsize=(12, 7))
sns.histplot(uniform_dist, color ='green',ax=ax[0])
sc.ppcc_plot(uniform_dist, -5,5, plot=ax[1])
shape_para_uniform =sc.ppcc_max(uniform_dist)
ax[1].vlines(shape_para_uniform,0,1, colors='red')
print("shape parameter of uniform distribution is ",shape_para_uniform)
  
# Beta Distribution
fig, ax = plt.subplots(1, 2, figsize=(12, 7))
sns.histplot(beta_dist, color ='blue',ax=ax[0])
sc.ppcc_plot(beta_dist, -5,5, plot=ax[1])
shape_para_beta =sc.ppcc_max(beta_dist)
ax[1].vlines(shape_para_beta,0,1, colors='red')
print("shape parameter of beta distribution is :",shape_para_beta)

Distribución normal con gráfico PPCC

shape parameter of normal distribution is  0.14139046072745928

Distribución de Cauchy con gráfico PPCC

shape parameter of cauchy distribution is  -0.8555566289941865

Distribución Logística con parcela PPCC

shape parameter of logistic is  0.003792036190661425

Distribución uniforme con gráfico PPCC

shape parameter of uniform distribution is  1.0681942803525217

Distribución beta con gráfico PPCC

shape parameter of beta distribution is : 0.9158983492057267

Referencias

Publicación traducida automáticamente

Artículo escrito por pawangfg y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *