Cómo calcular la correlación parcial en R

Actualizado por ultima vez el 7 de mayo de 2021, por .

En estadística, a menudo usamos el coeficiente de correlación de Pearson para medir la relación lineal entre dos variables. Sin embargo, a veces nos interesa comprender la relación entre dos variables mientras controlamos por una tercera variable .

Por ejemplo, supongamos que queremos medir la asociación entre el número de horas que estudia un estudiante y la puntuación del examen final que recibe, mientras controlamos la nota actual del estudiante en la clase. En este caso, podríamos utilizar una correlación parcial para medir la relación entre las horas estudiadas y la puntuación del examen final.

Este tutorial explica cómo calcular la correlación parcial en R.

Ejemplo: correlación parcial en R

Suponga que tenemos el siguiente marco de datos que muestra la calificación actual, el total de horas estudiadas y la puntuación del examen final para 10 estudiantes:

#create marco de datos
df <- data.frame (currentGrade = c (82, 88, 75, 74, 93, 97, 83, 90, 90, 80),
                 horas = c (4, 3, 6, 5, 4, 5, 8, 7, 4, 6),
                 examScore = c (88, 85, 76, 70, 92, 94, 89, 85, 90, 93))

#ver marco de datos
 df

   currentGrade hours examScore
1 82 4 88
2 88 3 85
3 75 6 76
4 74 5 70
5 93 4 92
6 97 5 94
7 83 8 89
8 90 7 85
9 90 4 90
10 80 6 93

Para calcular la correlación parcial entre cada combinación por pares de variables en el marco de datos, podemos usar la función pcor () de la biblioteca ppcor :

#calcular correlaciones parciales
pcor (df)

$ estimación
             currentGrade hours examScore
Grado actual 1.0000000 -0.3112341 0.7355673
horas -0.3112341 1.0000000 0.1906258
Examen Puntaje 0.7355673 0.1906258 1.0000000

$ p. valor
             currentGrade hours examScore
Grado actual 0.00000000 0.4149353 0.02389896
horas 0.41493532 0.0000000 0.62322848
Examen Puntaje 0.02389896 0.6232285 0.00000000

$ estadística
             currentGrade hours examScore
Grado actual 0.0000000 -0.8664833 2.8727185
horas -0,8664833 0,0000000 0,5137696
Examen Puntaje 2.8727185 0.5137696 0.0000000

$ n
[1] 10

$ gp
[1] 1

$ método
[1] "pearson"

A continuación se explica cómo interpretar la salida:

Correlación parcial entre las horas estudiadas y la puntuación del examen final:

La correlación parcial entre las horas estudiadas y la puntuación del examen final es .191 , que es una pequeña correlación positiva. A medida que aumentan las horas estudiadas, la puntuación del examen también tiende a aumentar, suponiendo que la calificación actual se mantenga constante.

El valor p para esta correlación parcial es .623 , que no es estadísticamente significativo en α = 0.05.

Correlación parcial entre la calificación actual y la calificación del examen final:

La correlación parcial entre la calificación actual y la puntuación del examen final es .736 , que es una fuerte correlación positiva. A medida que aumenta la calificación actual, la puntuación del examen también tiende a aumentar, asumiendo que las horas estudiadas se mantienen constantes.

El valor p para esta correlación parcial es .024 , que es estadísticamente significativo en α = 0.05.

Correlación parcial entre la nota actual y las horas estudiadas:

La correlación parcial entre la calificación actual y las horas estudiadas y la puntuación del examen final es -.311 , que es una correlación negativa leve. A medida que aumenta la calificación actual, la calificación del examen final tiende a disminuir, asumiendo que la calificación del examen final se mantiene constante.

El valor p para esta correlación parcial es 0.415 , que no es estadísticamente significativo en α = 0.05.

La salida también nos dice que el método utilizado para calcular la correlación parcial fue «pearson». Dentro de la función pcor (), también podríamos especificar “kendall” o “pearson” como métodos alternativos para calcular las correlaciones.

Puede encontrar la documentación completa de la biblioteca ppcor aquí .

  • https://r-project.org
  • https://www.python.org/
  • https://www.stata.com/

Deja un comentario

A menudo, puede estar interesado en encontrar todos los valores únicos en varias columnas en un DataFrame de pandas. Afortunadamente,…
statologos comunidad-2

Compartimos información EXCLUSIVA y GRATUITA solo para suscriptores (cursos privados, programas, consejos y mucho más)

You have Successfully Subscribed!