La correlación es una medida estadística que indica qué tan fuertemente están relacionadas dos variables. También implica la relación entre múltiples variables. Por ejemplo, si uno está interesado en saber si existe una relación entre las alturas de padres e hijos, se puede calcular un coeficiente de correlación para responder a esta pregunta. Generalmente, se encuentra entre -1 y +1. Es una versión escalada de la covarianza y proporciona la dirección y la fuerza de una relación.
Pruebas de correlación de Pearson en R
Existen principalmente dos tipos de correlación:
- Correlación Paramétrica – Correlación de Pearson(r) : Mide una dependencia lineal entre dos variables (x e y) se conoce como prueba de correlación paramétrica porque depende de la distribución de los datos.
- Correlación no paramétrica : Kendall (tau) y Spearman (rho) : son coeficientes de correlación basados en rangos, se conocen como correlación no paramétrica.
Fórmula del coeficiente de correlación de rango de Pearson
Pearson Rank Correlation es una correlación paramétrica. El coeficiente de correlación de Pearson es probablemente la medida más utilizada para las relaciones lineales entre dos variables distribuidas normalmente y, por lo tanto, a menudo se denomina simplemente «coeficiente de correlación». La fórmula para calcular la correlación de rango de Pearson es la siguiente:
dónde,
- r: coeficiente de correlación de Pearson
- x e y: dos vectores de longitud n
- m x y m y : corresponde a las medias de x e y, respectivamente.
Nota:
- r toma un valor entre -1 (correlación negativa) y 1 (correlación positiva).
- r = 0 significa que no hay correlación.
- No se puede aplicar a variables ordinales.
- El tamaño de la muestra debe ser moderado (20-30) para una buena estimación.
- Los valores atípicos pueden conducir a valores engañosos, lo que significa que no son robustos con los valores atípicos.
Implementación en R
R Language proporciona dos métodos para calcular el coeficiente de correlación de Pearson. Mediante el uso de las funciones cor() o cor.test() se puede calcular. Se puede observar que cor() calcula el coeficiente de correlación mientras que cor.test() calcula la prueba de asociación o correlación entre muestras pareadas. Devuelve tanto el coeficiente de correlación como el nivel de significación (o valor p) de la correlación.
Sintaxis: cor(x, y, método = “pearson”)
cor.test(x, y, método = “pearson”)Parámetros:
- x, y: vectores numéricos con la misma longitud
- método: método de correlación
Ejemplo 1: Usar el método cor()
R
# R program to illustrate # pearson Correlation Testing # Using cor() # Taking two numeric # Vectors with same length x = c(1, 2, 3, 4, 5, 6, 7) y = c(1, 3, 6, 2, 7, 4, 5) # Calculating # Correlation coefficient # Using cor() method result = cor(x, y, method = "pearson") # Print the result cat("Pearson correlation coefficient is:", result)
Producción:
Pearson correlation coefficient is: 0.5357143
Ejemplo 2: Usar el método cor.test()
R
# R program to illustrate # pearson Correlation Testing # Using cor.test() # Taking two numeric # Vectors with same length x = c(1, 2, 3, 4, 5, 6, 7) y = c(1, 3, 6, 2, 7, 4, 5) # Calculating # Correlation coefficient # Using cor.test() method result = cor.test(x, y, method = "pearson") # Print the result print(result)
Producción:
Pearson's product-moment correlation data: x and y t = 1.4186, df = 5, p-value = 0.2152 alternative hypothesis: true correlation is not equal to 0 95 percent confidence interval: -0.3643187 0.9183058 sample estimates: cor 0.5357143
En la salida anterior:
- T es el valor del estadístico de prueba (T = 1.4186)
- El valor p es el nivel de significancia de la estadística de prueba (valor p = 0,2152).
- hipótesis alternativa es una string de caracteres que describe la hipótesis alternativa (la correlación verdadera no es igual a 0).
- estimaciones de la muestra es el coeficiente de correlación. Para el coeficiente de correlación de Pearson se denomina cor (Cor.coeff = 0,5357).
Ejemplo 3:
Datos: Descarga el archivo CSV aquí .
R
# R program to illustrate # Pearson Correlation Testing # Import data into RStudio df = read.csv("Auto.csv") # Taking two column # Vectors with same length x = df$mpg y = df$weight # Calculating # Correlation coefficient # Using cor() method result = cor(x, y, method = "pearson") # Print the result cat("Person correlation coefficient is:", result) # Using cor.test() method res = cor.test(x, y, method = "pearson") print(res)
Producción:
Person correlation coefficient is: -0.8782815 Pearson's product-moment correlation data: x and y t = -31.709, df = 298, p-value < 2.2e-16 alternative hypothesis: true correlation is not equal to 0 95 percent confidence interval: -0.9018288 -0.8495329 sample estimates: cor -0.8782815
Publicación traducida automáticamente
Artículo escrito por AmiyaRanjanRout y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA