Calculadora del coeficiente de correlación y la covarianza (con diagrama de dispersión y recta de regresión)
Escribe los dos conjuntos de datos cuya relación quieres comprobar, cada uno separado por punto y coma ( ; ). Se calculan el coeficiente de correlación r, la covarianza y la ecuación de la recta de regresión, y la recta se dibuja sobre un diagrama de dispersión.
Índice
-
Qué puedes hacer en esta página
-
¿Para qué sirve este cálculo?
-
Cómo usar
-
Fórmulas y figuras
-
Símbolos y términos
-
Qué conviene saber de antemano
-
Cómo calcularlo con Excel
-
Cómo calcularlo con Hojas de cálculo de Google
-
Cómo calcularlo con Python
-
La fórmula en LaTeX y otras notaciones matemáticas (para copiar)
-
Cómo pedirle a ChatGPT que haga el cálculo
-
Las ventajas de DataChef
-
Funciones relacionadas
-
Todas las calculadoras de NumberChef
Qué puedes hacer en esta página
- Introduce datos emparejados \(x\) e \(y\) (dos variables) y obtendrás al instante el coeficiente de correlación \(r\) y la covarianza \(s_{xy}\)
- También se calculan a la vez la media, la varianza y la desviación típica de \(x\) y de \(y\), y la ecuación de la recta de regresión (mínimos cuadrados) \(y = ax + b\)
- Se dibuja un diagrama de dispersión con la recta de regresión y el punto de medias encima, así que puedes ver de un vistazo cómo se relacionan los dos conjuntos de datos (crecen juntos, uno crece y el otro decrece, o están dispersos)
- También se muestra una lectura orientativa del valor, como «correlación positiva fuerte» o «correlación casi nula o inexistente»
- En esta misma página encontrarás también una explicación sencilla de las fórmulas y las fórmulas listas para copiar en Excel, Hojas de cálculo de Google y Python
¿Para qué sirve este cálculo?
Un uso clásico del coeficiente de correlación es comprobar con datos, y no por intuición, si «las notas suben cuando estudias más». Calcula \(r\) a partir de los pares de horas de estudio y nota de cada alumno, y un solo número te dice lo fuerte que es la relación.
Los centros y las academias miran a veces la correlación entre asignaturas en los simulacros de examen (¿los alumnos que van bien en matemáticas también van bien en física?) para orientar la enseñanza. Pero ten en cuenta que una correlación no prueba la causa, como en «con solo estudiar más horas la nota subirá siempre».
Se sabe que las ventas de helados y de bebidas frías tienen una correlación positiva con la temperatura, y las de caldo y chocolate caliente, una negativa. Las tiendas y los restaurantes comprueban la correlación en los datos pasados de «temperatura y unidades vendidas» y cambian lo que piden y lo que exponen según la previsión del tiempo.
Si das un paso más y hallas la recta de regresión, puedes hacer una estimación concreta como «si la máxima prevista para mañana es de 32 °C, venderemos aproximadamente tantas unidades».
En inversión, el coeficiente de correlación entre los movimientos de precio de activos como las acciones, los bonos y el oro es una herramienta básica de la diversificación. Combinar activos con correlación baja (o negativa) significa que, cuando uno baja, es menos probable que el otro también baje, y eso mantiene más pequeñas las subidas y bajadas de toda la cartera.
Los fondos de pensiones y los fondos de inversión analizan siempre las correlaciones entre activos antes de decidir cómo repartir su dinero entre ellos.
Cuando aumentan los defectos en una fábrica, comprobar el coeficiente de correlación entre la tasa de defectos y condiciones como la temperatura de proceso, la humedad y el tiempo de funcionamiento de la máquina ayuda a acotar qué condiciones se mueven junto con los defectos. Es un método tan básico que el diagrama de dispersión que se usa para ello es una de las «siete herramientas básicas de la calidad».
Cuando se encuentra una condición con una correlación fuerte, el paso siguiente es un experimento que cambie la condición para confirmar la causa y el efecto, y de ahí se avanza en las mejoras.
La investigación sobre el estilo de vida y la salud, como «el ejercicio y la tensión arterial» o «el tabaco y el riesgo de una enfermedad», también empieza comprobando la correlación en los datos.
Es también donde se aprende a no saltar de la correlación a la causa. Un ejemplo famoso es que las ventas de helados y los ahogamientos tienen una correlación positiva. Los dos suben simplemente con un factor común, el calor. La investigación médica usa muchos métodos para eliminar el efecto de esos terceros factores y acercarse a la verdadera causa y efecto.
Fórmulas y figuras
Símbolos y términos
Símbolos
| \(x_i,\ y_i\) | x sub i, y sub i | El valor de \(x\) y el valor de \(y\) del par número \(i\). (Ejemplo: las horas de estudio \(x_3\) y la nota \(y_3\) del 3.er alumno.) \(i\) es una letra que se usa a menudo para un índice (un número de posición). |
| \(n\) | n | El número de pares, por la inicial de «número». (Ejemplo: para los pares de 5 alumnos, \(n = 5\)) |
| \(\bar{x},\ \bar{y}\) | x barra, y barra | Las medias de \(x\) y de \(y\). Una barra sobre una letra es la forma habitual de indicar una media. |
| \(x_i - \bar{x}\) | x sub i menos x barra | La desviación de \(x\). Indica cuánto se aleja cada valor de la media de \(x\). \(y_i - \bar{y}\) es la desviación de \(y\). |
| \(s_{xy}\) | s sub x y | La covarianza de \(x\) y de \(y\), la media de los productos de las desviaciones. Muestra la tendencia de los dos conjuntos de datos a moverse juntos. La letra \(s\) es la habitual para los estadísticos de la misma familia que la desviación típica (también se escribe \(\sigma_{xy}\)). |
| \(s_x,\ s_y\) | s sub x, s sub y | Las desviaciones típicas de \(x\) y de \(y\) (lo dispersa que está cada una). Son las raíces cuadradas de las varianzas. |
| \(s_x^2,\ s_y^2\) | s sub x al cuadrado, s sub y al cuadrado | Las varianzas de \(x\) y de \(y\), la media de las desviaciones al cuadrado (divididas entre \(n\)). |
| \(r\) | r | El coeficiente de correlación. Se dice que la letra viene de la \(r\) de «correlación» o de «regresión». Siempre está entre \(-1\) y \(1\). |
| \(\sum\) | sigma (signo de sumatorio) | Un símbolo que significa «súmalos todos». \(\sum_{i=1}^{n}\) se lee «la suma desde \(i = 1\) hasta \(n\)». |
| \(a,\ b\) | a, b | La pendiente y la ordenada en el origen de la recta de regresión \(y = ax + b\). Cumplen el mismo papel que \(m\) y \(n\) en \(y = mx + n\). |
Términos
| correlación | Una tendencia lineal entre dos conjuntos de datos, en la que uno aumenta cuando aumenta el otro (o disminuye). Cuanto más fuerte es, más cerca de una recta quedan los puntos de un diagrama de dispersión. |
| correlación positiva | La tendencia de \(y\) a aumentar cuando aumenta \(x\). El diagrama de dispersión sube hacia la derecha y el coeficiente de correlación es positivo. |
| correlación negativa | La tendencia de \(y\) a disminuir cuando aumenta \(x\). El diagrama de dispersión baja hacia la derecha y el coeficiente de correlación es negativo. |
| coeficiente de correlación lineal (coeficiente de correlación) | Un único número entre \(-1\) y \(1\) que indica la fuerza y el sentido de una correlación (también llamado coeficiente de correlación de Pearson). Se halla dividiendo la covarianza entre el producto de las desviaciones típicas de \(x\) y de \(y\). Como no depende de las unidades, puedes comparar su fuerza entre datos distintos. |
| covarianza | La media de los productos de las desviaciones de \(x\) y de \(y\). Positiva significa una tendencia a subir hacia la derecha y negativa, a bajar hacia la derecha. Esta página divide entre el número de pares \(n\) (la versión poblacional, la habitual en Bachillerato). |
| diagrama de dispersión (nube de puntos) | Un gráfico que representa datos emparejados \((x,\ y)\) como puntos en un plano de coordenadas. Por cómo se colocan los puntos puedes leer de un vistazo el sentido y la fuerza de una correlación. |
| variable | Una cantidad que mides como dato, como la estatura, la nota o la temperatura. Esta página estudia la relación entre dos variables, \(x\) e \(y\). |
| desviación | La diferencia entre un valor y la media. Positiva significa por encima de la media y negativa, por debajo. La covarianza, la varianza y la desviación típica se construyen todas a partir de las desviaciones. |
| varianza | La media de las desviaciones al cuadrado. Indica lo grande que es la dispersión de los datos. Aparece en el denominador de la pendiente de la recta de regresión. |
| desviación típica (desviación estándar) | La raíz cuadrada de la varianza. Su unidad es la misma que la de los datos, lo que la hace fácil de usar como medida de dispersión. Aparece en el denominador del coeficiente de correlación. |
| recta de regresión (recta de ajuste) | La recta \(y = ax + b\) que mejor se ajusta a la nube de puntos de un diagrama de dispersión. Se usa para predecir un valor de \(y\) a partir de un valor de \(x\). |
| método de mínimos cuadrados | Una forma de elegir la pendiente y la ordenada en el origen de una recta para que las distancias verticales (errores) entre cada punto y la recta, elevadas al cuadrado y sumadas, sean lo más pequeñas posible. La recta de regresión es la recta elegida de esta manera. |
| valor atípico (outlier) | Un valor muy alejado de los demás puntos. El coeficiente de correlación se ve muy afectado por los valores atípicos, así que compruébalo siempre junto con el diagrama de dispersión. |
| asociación | Una relación en la que dos cantidades se mueven juntas (cuando una aumenta, la otra aumenta o disminuye). Aunque haya correlación, una no es necesariamente la causa de la otra (causalidad). Puede que solo haya una causa común detrás de las dos (un tercer factor, también llamado variable oculta). |
| causalidad (causa y efecto) | Una relación en la que una cosa es la causa y la otra su resultado. Una asociación (moverse juntas) por sí sola no demuestra causalidad; puede que solo haya una causa común detrás de las dos (un tercer factor). |
Qué conviene saber de antemano
Esto es lo que te ayuda a usar el cálculo de esta página entendiendo de verdad lo que haces, y no solo pulsando el botón.
Si te atascas, repasar estos temas es el camino más rápido para avanzar.
| La media (6.º de Primaria, 11-12 años) |
|
| Números negativos (1.º de ESO, 12-13 años) |
|
| Coordenadas y funciones lineales (2.º y 3.º de ESO, 13-15 años) |
|
| Raíces cuadradas (2.º de ESO, 13-14 años) |
|
| Estadística bidimensional (4.º de ESO y 1.º de Bachillerato, 15-17 años) |
|
Cómo calcularlo con Excel
| x del par 1 | 1 |
| x del par 2 | 2 |
| x del par 3 | 3 |
| x del par 4 | 4 |
| x del par 5 | 5 |
| y del par 1 | 2 |
| y del par 2 | 4 |
| y del par 3 | 4 |
| y del par 4 | 4 |
| y del par 5 | 6 |
| Covarianza s_xy (entre n) | =COVARIANZA.P(B1:B5;B6:B10) |
| (Como referencia) covarianza muestral, entre n−1 | =COVARIANZA.M(B1:B5;B6:B10) |
| x del par 1 | 1 |
| x del par 2 | 2 |
| x del par 3 | 3 |
| x del par 4 | 4 |
| x del par 5 | 5 |
| y del par 1 | 2 |
| y del par 2 | 4 |
| y del par 3 | 4 |
| y del par 4 | 4 |
| y del par 5 | 6 |
| Coeficiente de correlación r | =COEF.DE.CORREL(B1:B5;B6:B10) |
| (Como referencia) el mismo valor con PEARSON | =PEARSON(B1:B5;B6:B10) |
| x del par 1 | 1 |
| x del par 2 | 2 |
| x del par 3 | 3 |
| x del par 4 | 4 |
| x del par 5 | 5 |
| y del par 1 | 2 |
| y del par 2 | 4 |
| y del par 3 | 4 |
| y del par 4 | 4 |
| y del par 5 | 6 |
| Pendiente a | =PENDIENTE(B6:B10;B1:B5) |
| Ordenada en el origen b | =INTERSECCION.EJE(B6:B10;B1:B5) |
| x del par 1 | 1 |
| x del par 2 | 2 |
| x del par 3 | 3 |
| x del par 4 | 4 |
| x del par 5 | 5 |
| y del par 1 | 2 |
| y del par 2 | 4 |
| y del par 3 | 4 |
| y del par 4 | 4 |
| y del par 5 | 6 |
| Media de x x̄ | =PROMEDIO(B1:B5) |
| Media de y ȳ | =PROMEDIO(B6:B10) |
| Varianza de x s_x² | =VARP(B1:B5) |
| Desviación típica de x s_x | =DESVESTP(B1:B5) |
| Varianza de y s_y² | =VARP(B6:B10) |
| Desviación típica de y s_y | =DESVESTP(B6:B10) |
La covarianza de la primera tabla es 1,6 (la covarianza muestral es 2), el coeficiente de correlación de la segunda tabla es aproximadamente 0,8944 y la tercera tabla da una pendiente de 0,8 y una ordenada en el origen de 1,6.
Ojo: hay dos funciones de covarianza. COVARIANZA.P es la covarianza que divide entre n (igual que esta calculadora) y COVARIANZA.M es la covarianza muestral, que divide entre n − 1. En versiones antiguas de Excel (2007 y anteriores), usa COVAR en lugar de COVARIANZA.P.
COEF.DE.CORREL y PEARSON dan el mismo coeficiente de correlación (r es igual si divides entre n o entre n − 1, así que no hay nada que elegir).
PENDIENTE e INTERSECCION.EJE toman «el intervalo de y, el intervalo de x» en ese orden (fíjate en que x no va primero).
Para usar otra cantidad de pares, añade (o quita) filas de números y cambia «B1:B5» y «B6:B10» en las fórmulas por tus intervalos de datos reales.
Cómo calcularlo con Hojas de cálculo de Google
| x del par 1 | 1 |
| x del par 2 | 2 |
| x del par 3 | 3 |
| x del par 4 | 4 |
| x del par 5 | 5 |
| y del par 1 | 2 |
| y del par 2 | 4 |
| y del par 3 | 4 |
| y del par 4 | 4 |
| y del par 5 | 6 |
| Covarianza s_xy (entre n) | =COVAR(B1:B5;B6:B10) |
| x del par 1 | 1 |
| x del par 2 | 2 |
| x del par 3 | 3 |
| x del par 4 | 4 |
| x del par 5 | 5 |
| y del par 1 | 2 |
| y del par 2 | 4 |
| y del par 3 | 4 |
| y del par 4 | 4 |
| y del par 5 | 6 |
| Coeficiente de correlación r | =COEF.DE.CORREL(B1:B5;B6:B10) |
| x del par 1 | 1 |
| x del par 2 | 2 |
| x del par 3 | 3 |
| x del par 4 | 4 |
| x del par 5 | 5 |
| y del par 1 | 2 |
| y del par 2 | 4 |
| y del par 3 | 4 |
| y del par 4 | 4 |
| y del par 5 | 6 |
| Pendiente a | =PENDIENTE(B6:B10;B1:B5) |
| Ordenada en el origen b | =INTERSECCION.EJE(B6:B10;B1:B5) |
En Hojas de cálculo de Google, la covarianza que divide entre n se halla con la función COVAR (la misma definición que esta calculadora; el nombre COVARIANZA.P llama a la misma función). El coeficiente de correlación usa COEF.DE.CORREL, igual que Excel.
Cómo calcularlo con Python
import statistics
xs = [1, 2, 3, 4, 5] # datos de x (ejemplo: horas de estudio)
ys = [2, 4, 4, 4, 6] # datos de y (ejemplo: nota de un control)
n = len(xs)
mean_x = statistics.mean(xs) # media de x
mean_y = statistics.mean(ys) # media de y
# covarianza s_xy (versión poblacional: se divide entre n)
covariance = sum((x - mean_x) * (y - mean_y) for x, y in zip(xs, ys)) / n
sd_x = statistics.pstdev(xs) # desviación típica de x (se divide entre n)
sd_y = statistics.pstdev(ys) # desviación típica de y (se divide entre n)
r = covariance / (sd_x * sd_y) # coeficiente de correlación
slope = covariance / statistics.pvariance(xs) # pendiente a de la recta de regresión
intercept = mean_y - slope * mean_x # ordenada en el origen b de la recta de regresión
print(f"Covarianza s_xy: {covariance}")
print(f"Coeficiente de correlación r: {r}")
# la ordenada en el origen puede mostrar un error de coma flotante (1,5999…), así que se redondea a 10 cifras significativas
print(f"Recta de regresión: y = {slope:.10g}x + {intercept:.10g}")
La fórmula en LaTeX y otras notaciones matemáticas (para copiar)
s_xy = {(x₁ − x̄)(y₁ − ȳ) + … + (xₙ − x̄)(yₙ − ȳ)} ÷ n
s_{xy} = \dfrac{1}{n}\sum_{i=1}^{n} (x_i - \bar{x})(y_i - \bar{y})
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<msub><mi>s</mi><mrow><mi>x</mi><mi>y</mi></mrow></msub>
<mo>=</mo>
<mfrac><mn>1</mn><mi>n</mi></mfrac>
<munderover>
<mo>∑</mo>
<mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow>
<mi>n</mi>
</munderover>
<mrow>
<mo>(</mo><msub><mi>x</mi><mi>i</mi></msub><mo>−</mo><mover><mi>x</mi><mo>¯</mo></mover><mo>)</mo>
<mo>(</mo><msub><mi>y</mi><mi>i</mi></msub><mo>−</mo><mover><mi>y</mi><mo>¯</mo></mover><mo>)</mo>
</mrow>
</mrow>
</math>
s_(xy) = (1/n) sum_(i=1)^n (x_i - bar x)(y_i - bar y)
Covariance[xdata, ydata]*(Length[xdata] - 1)/Length[xdata] (* Covariance divide entre n-1, así que esto lo convierte en el valor dividido entre n *)
s_xy := add((x[i] - x_bar)*(y[i] - y_bar), i = 1 .. n)/n;
s_xy = mean((x - mean(x)).*(y - mean(y)));
s_xy = (1/n) ∑_(i=1)^n (x_i − x̄)(y_i − ȳ)
r = s_xy ÷ (s_x × s_y)
r = \dfrac{s_{xy}}{s_x\, s_y}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>r</mi>
<mo>=</mo>
<mfrac>
<msub><mi>s</mi><mrow><mi>x</mi><mi>y</mi></mrow></msub>
<mrow><msub><mi>s</mi><mi>x</mi></msub><msub><mi>s</mi><mi>y</mi></msub></mrow>
</mfrac>
</mrow>
</math>
r = s_(xy) / (s_x s_y)
Correlation[xdata, ydata]
r := s_xy/(s_x*s_y);
R = corrcoef(x, y); r = R(1, 2);
r = s_xy/(s_x s_y)
y = ax + b, a = s_xy ÷ s_x², b = ȳ − a·x̄
y = ax + b, \quad a = \dfrac{s_{xy}}{s_x^{2}}, \quad b = \bar{y} - a\bar{x}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>y</mi><mo>=</mo><mi>a</mi><mi>x</mi><mo>+</mo><mi>b</mi>
<mo>,</mo><mspace width="1em"/>
<mi>a</mi><mo>=</mo>
<mfrac>
<msub><mi>s</mi><mrow><mi>x</mi><mi>y</mi></mrow></msub>
<msubsup><mi>s</mi><mi>x</mi><mn>2</mn></msubsup>
</mfrac>
<mo>,</mo><mspace width="1em"/>
<mi>b</mi><mo>=</mo>
<mover><mi>y</mi><mo>¯</mo></mover>
<mo>−</mo>
<mi>a</mi><mover><mi>x</mi><mo>¯</mo></mover>
</mrow>
</math>
y = a x + b, a = s_(xy)/s_x^2, b = bar y - a bar x
lm = LinearModelFit[Transpose[{xdata, ydata}], t, t]; lm["BestFitParameters"]
a := s_xy/s_x^2; b := y_bar - a*x_bar;
p = polyfit(x, y, 1); % p(1) = pendiente a, p(2) = ordenada en el origen b
y = ax + b, a = s_xy/s_x^2, b = ȳ − ax̄
Cómo pedirle a ChatGPT que haga el cálculo
Eres un asistente de cálculo estadístico. Haz el siguiente cálculo ejecutando realmente código de Python y basa tu respuesta solo en los números del resultado de la ejecución (no respondas con cálculo mental ni suposiciones). Para los siguientes datos emparejados, calcula cada uno de los valores indicados. x: 1 ; 2 ; 3 ; 4 ; 5 y: 2 ; 4 ; 4 ; 4 ; 6 1. Las medias de x y de y, y sus varianzas y desviaciones típicas dividiendo entre n 2. La covarianza s_xy (la suma de los productos de las desviaciones dividida entre el número de pares n; no dividas entre n − 1) 3. El coeficiente de correlación r 4. La pendiente a y la ordenada en el origen b de la recta de regresión y = ax + b (mínimos cuadrados) Muestra las fórmulas que has usado y los números del resultado de la ejecución.
Cómo usar
-
1Introduce los númerosEscribe en los campos los números con los que quieres calcular
-
2CalculaHaz clic en el botón «Calcular»
-
3Consulta el resultadoEl resultado aparece al instante. En la misma página también encontrarás el desarrollo del cálculo y la explicación de la fórmula
Las ventajas de DataChef
Sin conocimientos técnicos: fácil e intuitivo
Sin necesidad de dar datos personales
Los archivos se borran automáticamente tras la descarga
Sin necesidad de atribución
Sin necesidad de pedir permiso