- 0
- 0
- 0
- 0
Actualizado el 7 de mayo de 2021, por Luis Benites.
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 Python.
Ejemplo: correlación parcial en Python
Supongamos que tenemos el siguiente marco de datos de Pandas que muestra la calificación actual, el total de horas estudiadas y la puntuación del examen final para 10 estudiantes:
importar numpy como np importar panda como pd datos = {'currentGrade': [82, 88, 75, 74, 93, 97, 83, 90, 90, 80], 'horas': [4, 3, 6, 5, 4, 5, 8, 7, 4, 6], 'examScore': [88, 85, 76, 70, 92, 94, 89, 85, 90, 93], } df = pd.DataFrame (datos, columnas = ['currentGrade', 'hours', 'examScore']) df currentGrade hours examScore 0 82 4 88 1 88 3 85 2 75 6 76 3 74 5 70 4 93 4 92 5 97 5 94 6 83 8 89 7 90 7 85 8 90 4 90 9 80 6 93
Para calcular la correlación parcial entre horas y examScore mientras se controla por currentGrade , podemos usar la función parcial_corr () del paquete pingouin , que usa la siguiente sintaxis:
parcial_corr (datos, x, y, covar)
dónde:
- datos: nombre del marco de datos
- x, y: nombres de columnas en el marco de datos
- covar: el nombre de la columna de covariables en el marco de datos (por ejemplo, la variable que está controlando)
A continuación, se explica cómo utilizar esta función en este ejemplo en particular:
# instalar e importar el paquete pingouin pip instalar pingouin importar pingouin como pg # encuentre una correlación parcial entre las horas y la puntuación del examen mientras controla la calificación pg.partial_corr (data = df, x = 'hours', y = 'examScore', covar = 'currentGrade') n r CI95% r2 adj_r2 p-val BF10 potencia pearson 10 0.191 [-0.5, 0.73] 0.036 -0.238 0.598 0.438 0.082
Podemos ver que 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.
Para calcular la correlación parcial entre múltiples variables a la vez, podemos usar la función .pcorr () :
# calcular todas las correlaciones parciales parciales, redondeadas a tres decimales df.pcorr (). ronda (3) currentGrade hours examScore Grado actual 1.000 -0.311 0.736 horas -0,311 1,000 0,191 Examen Puntaje 0.736 0.191 1.000
La forma de interpretar la salida es la siguiente:
- La correlación parcial entre el grado actual y las horas estudiadas es de -0,311 .
- La correlación parcial entre la nota actual y la puntuación del examen 0,736 .
- La correlación parcial entre las horas estudiadas y la puntuación del examen 0,191 .
- https://r-project.org
- https://www.python.org/
- https://www.stata.com/
¿Te hemos ayudado?
Ayudanos ahora tú, dejanos un comentario de agradecimiento, nos ayuda a motivarnos y si te es viable puedes hacer una donación:La ayuda no cuesta nada
Por otro lado te rogamos que compartas nuestro sitio con tus amigos, compañeros de clase y colegas, la educación de calidad y gratuita debe ser difundida, recuerdalo: