CorrelaciĆ³n y RegresiĆ³n
# Packages used
library(tidyverse)
library(rcompanion)
IntroducciĆ³n
Uno de los temas mĆ”s utilizados en el anĆ”lisis de datos en la actualidad se deriva de dos procesos, el de CorrelaciĆ³n y el de RegresiĆ³n Lineal. Estas dos metodologĆas aunque estĆ”n relacionadas son diferentes y se usan para propĆ³sitos distintos.
RegresiĆ³n La regresiĆ³n es un anĆ”lisis Ćŗtil para
estimar y analizar la relaciĆ³n entre variables y establecer modelos que
permitan hacer predicciones o estimar valores de variables en valores
correspondientes de otra variable. Las ideas de regresiĆ³n fueron
introducidas originalmente por el cientĆfico ingles Sir Francis Galton
(1822-1911).
CorrelaciĆ³n El anĆ”lisis de correlaciĆ³n es aquel que nos
permite medir la fuerza de relaciĆ³n entre variables. Cuando se estima la
correlaciĆ³n de una serie de variables, estamos interesados en calcular
el grado de correlaciĆ³n entre variables. Este anĆ”lisis y el
termino que lo describe tambiƩn fue introducido por Galton en 1888.
Modelo de RegresiĆ³n Lineal Simple
El modelo mĆ”s tĆpico de regresiĆ³n es el que relaciona dos variables a una linea recta, por eso se llama regresiĆ³n lineal. Supuestos que se usan en el modelo simple de regresiĆ³n lineal. En este modelo por lo general se tienen solo dos variables \(Y\) y \(X\). La variable \(X\) por lo general se usa para referirse a la variable independiente, ya que generalmente los valores de esta variable estĆ”n controlados por el investigador. Para cada valor de \(X\) hay uno o varios valores de \(Y\), que por lo general son obtenidos a partir de medidas experimentales. La variable \(Y\) es llamada la variable dependiente. Por lo general nos referimos a una regresiĆ³n de \(Y\) por \(X\). En el el caso de la regresiĆ³n lineal se hacen las siguientes suposiciones:
- Los valores de la variable independiente \(X\) se suponen fijos, son valores
predeterminados considerados no aleatorios.
- La variable \(X\) se considera medida sin error.
- Para cada valor de \(X\) hay una
sub-poblaciĆ³n de valores \(Y\), en los
que se puede hacer procesos de inferencia con medidas de estimaciĆ³n de
hipĆ³tesis.
- Las varianzas de las diferentes sub-poblaciones de \(Y\) se consideran iguales \(\sigma^2\).
- Todos los promedios de cada sub-poblaciĆ³n de \(Y\) se localizan sobre la misma linea
recta. Esto es lo que se conoce como la suposiciĆ³n de
linealidad, que puede ser expresada como \(\mu_{y|x} = \beta_0 + \beta_1 x\), donde
\(\mu_{y|x}\) es le promedio de la
sub-poblaciĆ³n de \(Y\) para un valor
particular de \(X\) y \(\beta_0\) y \(\beta_1\) son los coeficientes de regresiĆ³n
de la poblaciĆ³n. La interpretaciĆ³n geomĆ©trica de \(\beta_0\) y \(\beta_1\) es la intersecciĆ³n de la recta
con el eje de las \(y\) y la pendiente
del modelo, respectivamente.
- Los valores de \(Y\) son estadĆsticamente independientes. Esto significa que cada muestra de valores de \(Y\) que se toman en un punto \(X\) son independientes de la muestra que se tome en cualquier otro valor de \(X\).
La linea de mĆnimos cuadrados
El mĆ©todo mĆ”s usado para estimar el modelo lineal (la lĆnea que mejor describe los puntos ajustados) es llamado mĆnimos cuadrados, para este punto recordemos que la ecuaciĆ³n de la lĆnea recta es: \(y = m x + b_0\).
Expresiones para estimar la lĆnea recta de mĆnimos cuadrados
Las ecuaciones para estimar la lĆnea recta por mĆnimos cuadrados ara un conunto de datos \(Y = y_1, y_2, \dots, y_n\) y \(X = x_1, x_2, \dots, x_n\), con promedios \(\bar{y}\) y \(\bar{x}\), respectivamente y \(\hat{\beta}_0\) y \(\hat{\beta}_1\) son los valores estimados para la intersecciĆ³n con el eje \(y\), \(\beta_0\) y la pendiente de la recta \(\beta_1\).
\[ \hat{\beta}_1 = \frac{\sum_{i=1}^n (x_i - \bar{x})(y_i - \bar{y})}{\sum_{i=1}^n (x_i - \bar{x})^2} \]
\[ \hat{\beta}_0 = \bar{y} - \hat{\beta}_1 \bar{x} \]
Ejemplo DeprĆØs et al.Ā establecieron que la
topografĆa del tejido adiposo (AT) estĆ” asociada con complicaciones
metabĆ³licas consideradas como un riesgo par la enfermedad
cardiovascular. Es importante, establecieron en dicho trabajo, medir la
cantidad de tejido adiposo itraabdominal como parte de la evaluaciĆ³n de
riesgo individual de enfermedad cardiovascular. TomografĆa computarizada
(CT), la Ćŗnica tĆ©cnica que puede medir de forma precisa y confiable la
cantidad de AT intraabdominal profunda, sin embargo, es costosa y expone
al sujeto a radiaciĆ³n ionizante (rayos X), ademĆ”s es una tĆ©cnica que no
es accesible a todos los mĆ©dicos. DeprĆØs y sus colegas condujeron su
estudio para desarrollar ecuaciones que predigan la cantidad de AT
intraabdominal profunda a partir de medidas antropomƩtricas simples. Sus
sujetos de estudio fueron hombres adultos de entre 18 y 42 aƱos de edad,
sin enfermedad de desorden metabĆ³lico que requiriera medicaciĆ³n. Entre
las medidas tomadas a cada sujeto estuvieron la de TA intraabdominal
profunda por CT y la circunferencia de la cintura, listadas en el
archivo EXA_C09_S03_01.csv
. La pregunta es; que tan bien se
puede estimar la cantidad de TA intraabdominal profunda partir se la
medida de la circunferencia de la cintura. Como la medida de AT
intraabdominal profunda es la variable a evaluar y hacer predicciones,
se considera la variable dependiente. La variable de la circunferencia
de la cintura se tomarĆ” como la medida independiente.
<- read_csv("~/Dropbox/GitHub/ProbEstad/DataSets/ch09_all/EXA_C09_S03_01.csv", show_col_types = FALSE)
Waist Waist
# A tibble: 109 Ć 3
SUBJ X Y
<dbl> <dbl> <dbl>
1 1 74.8 25.7
2 2 72.6 25.9
3 3 81.8 42.6
4 4 84.0 42.8
5 5 74.6 29.8
6 6 71.8 21.7
7 7 80.9 29.1
8 8 83.4 33.0
9 9 63.5 11.4
10 10 73.2 32.2
# ā¦ with 99 more rows
plot(Y ~ X, data = Waist, pch = 20, xlab = "Circunferencia de cintura (cm)", ylab = "Ɣrea de TA intraabdominal profunda")
# mean lines for y and x.
abline(v = mean(Waist$X), col = 2, lty = 2)
abline(h = mean(Waist$Y), col = 2, lty = 2)
# Estimation of the linear model
<- lm(Y ~ X, data = Waist)
Waist_lm summary(Waist_lm)
Call:
lm(formula = Y ~ X, data = Waist)
Residuals:
Min 1Q Median 3Q Max
-107.288 -19.143 -2.939 16.376 90.342
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -215.9815 21.7963 -9.909 <2e-16 ***
X 3.4589 0.2347 14.740 <2e-16 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 33.06 on 107 degrees of freedom
Multiple R-squared: 0.67, Adjusted R-squared: 0.667
F-statistic: 217.3 on 1 and 107 DF, p-value: < 2.2e-16
# plot of the estimated linear model
abline(a = -215.98, b = 3.4589, col = 6)
EstimaciĆ³n del Coeficiente de DeterminaciĆ³n de la PoblaciĆ³n
Siempre es importante preguntarnos si la recta ajustada es una buena representaciĆ³n de los datos, es decir que tan buen trabajo hizo el ajuste al modelo lineal. Para es to evaluamos la ecuaciĆ³n de la regresiĆ³n basada en los datos de la muestra (\(\tilde{y}_i\)), el resultado es llamado el coeficiente de determinaciĆ³n de la muestra, \(r^2\).
\[ r^2 = \frac{\sum(\hat{y}_i - \bar{y})^2}{\sum(y_i - \bar{y})^2} \]
Esta R-cuadrada es calculada directamente de los cuadrados de la diferencias de la \(y_i\) estimadas por el modelo en cada punto \(x_i\) comparados con los cuadrados de los datos originales \(y_i\) (en R es llamada Miltiple R-squared). El coeficiente de determinaciĆ³n de la muestra mide la ācalidadā (que tan cerca) estĆ” la ecuaciĆ³n de regresiĆ³n a los valores observados originales.
El coeficiente de determinaciĆ³n de la muestra es una estimado puntual de \(\rho^2\) el Coeficiente de DeterminaciĆ³n de la PoblaciĆ³n. El Coeficiente de determinaciĆ³n de la poblaciĆ³n \(\rho^2\) tiene la misma funciĆ³n relativa a la poblaciĆ³n que \(r^2\) tiene a la muestra. Este coeficiente, muestra cual proporciĆ³n de la variaciĆ³n de la poblaciĆ³n en \(Y\) es explicada por la regresiĆ³n de \(Y\) en \(X\). Un estimador sin sesgo de \(\rho^2\) estĆ” dado por
\[ \tilde{r}^2 = 1 - \frac{\sum(y_i - \hat{y}_i)^2/(n-2)}{\sum(y_i - \bar{y})^2/(n-1)} \] Esta es la cantidad llamada R-sq (en R es la llamada Adjusted R-squared).
EjemploLos escores listados en EXR_C09_S03_02.csv, muestran las evaluaciones de la enfermera (X) y del mĆ©dico (Y) para la condiciĆ³n de 10 pacientes al momento de admisiĆ³n de un centro de trauma. Muestra una grĆ”fica de los puntos y estime la regresiĆ³n lineal.
SoluciĆ³n primero resolveremos el modelo en forma general estimando los dos parĆ”metros de ajuste de mĆnimos cuadrados, el tĆ©rmino independiente (intersecciĆ³n con el eje \(y\)) \(\beta_0\) y el segundo tĆ©rmino o pendiente \(\beta_1\) con el modelo lineal Y ~ X. Posteriormente estimaremos el modelo āsin el tĆ©rmino independienteā, forzaremos que el modelo en R estime sin el coeficiente \(\beta_0\), Y ~ X - 1. En la grĆ”fica el modelo lineal completo es la lĆnea roja y el modelo que pasa por el origen es la lĆnea azul.
<- read_csv("~/Dropbox/GitHub/ProbEstad/DataSets/ch09_all/EXR_C09_S03_02.csv", show_col_types = FALSE)
Scores Scores
# A tibble: 10 Ć 2
X Y
<dbl> <dbl>
1 18 23
2 13 20
3 18 18
4 15 16
5 10 14
6 12 11
7 8 10
8 4 7
9 7 6
10 3 4
# X enfermera, Y mƩdico
plot(Y ~ X, data = Scores, pch = 20, xlab = "Eval. enfermera", ylab = "Eval. mƩdico", xlim = c(0, 20), ylim = c(0, 25))
abline(v = mean(Scores$X), col = 2, lty = 2)
abline(h = mean(Scores$Y), col = 2, lty = 2)
# MinSqr
<- lm(Y ~ X, data = Scores)
Scores_lm summary(Scores_lm)
Call:
lm(formula = Y ~ X, data = Scores)
Residuals:
Min 1Q Median 3Q Max
-3.1988 -2.3808 -0.1638 1.8393 4.7189
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 1.2112 2.0557 0.589 0.571993
X 1.0823 0.1723 6.283 0.000237 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 2.765 on 8 degrees of freedom
Multiple R-squared: 0.8315, Adjusted R-squared: 0.8104
F-statistic: 39.47 on 1 and 8 DF, p-value: 0.0002372
# Good example for forcing the model to set beta_0 =0
<- lm(Y ~ X - 1, data = Scores)
Scores_lm_0 summary(Scores_lm_0)
Call:
lm(formula = Y ~ X - 1, data = Scores)
Residuals:
Min 1Q Median 3Q Max
-3.1348 -2.0674 0.5421 2.1601 4.7360
Coefficients:
Estimate Std. Error t value Pr(>|t|)
X 1.17416 0.07056 16.64 4.57e-08 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 2.663 on 9 degrees of freedom
Multiple R-squared: 0.9685, Adjusted R-squared: 0.965
F-statistic: 276.9 on 1 and 9 DF, p-value: 4.566e-08
# plot of the linear model for Scores
abline(a = Scores_lm$coefficients[1], b = Scores_lm$coefficients[2], col = 2)
abline(a = 0, b = Scores_lm_0$coefficients, col = 4)
# Error plots for lm in R
plot(Scores_lm)
# Error plots for the second model
plot(Scores_lm_0)
CorrelaciĆ³n
Comentamos que el problema de regresiĆ³n, se tiene una variable respuesta (variable dependiente) \(Y\), aleatoria (posiblemente distribuida de forma normal) que generalmente representa la medida experimental y los datos de estudio que serĆ”n ajustados, a un modelo lineal que responde a una variable independiente \(X\). Para el caso de dos variables aleatorias (con distribuciones normales) \(Y\) y \(X\), surge la pregunta; ĀæCual es la relaciĆ³n entre las dos variables, como es la variaciĆ³n de ellas, estĆ”n relacionadas en cuanto a su variaciĆ³n? Cuando las dos variables son aleatorias se dice que se tiene un modelo de correlaciĆ³n, se tienen dos variables que varĆan conjuntamente en lo que se conoce como una distribuciĆ³n conjunta, si esta distribuciĆ³n es normal se dice que es una distribuciĆ³n normal bivariada. E inferencias se pueden hacer basados en muestreo de cada variable.
SuposiciĆ³nes del modelo de correlaciĆ³n
A continuaciĆ³n listamos las suposiciones necesarias para hacer
inferencias de una poblaciĆ³n a partir de muestreo de una distribuciĆ³n
bivariada:
1. Para cada valor de \(X\) hay una
subpoblaciĆ³n normalmente distribuida de valores de \(Y\).
2. Para cada valor de \(Y\) hay una
subpoblaciĆ³n normalmente distribuida de valores de \(X\).
3. La distribuciĆ³n conjunta de \(X\) y
\(Y\) es una distribuciĆ³n normal
bivariada.
4. Las subpoblaciones de valores de \(Y\) tienen la misma varianza.
5. Las subpoblaciones de valores de \(X\) tienen la misma varianza.
El coeficiente de correlaciĆ³n
La distribuciĆ³n bivariada normal que describe estos datos tiene cinco
parƔmetros: \(\sigma_x, \sigma_y, \mu_x,
\mu_y,\) y \(\rho\). Los cuatro
primeros son las varianza de \(X\) y
\(Y\) y sus medias respectivas y \(\rho\) es el coeficiente de correlaciĆ³n de
la poblaciĆ³n, que mide la fuerza de la relaciĆ³n lineal entre las
variables \(Y\) y \(X\). Por lo general estamos interesados en
determinar si \(\rho \neq 0\), esto es.
si \(Y\) y \(X\) estƔn linealmente correlacionadas. Como
\(\rho\) es por lo general desconocido,
es necesario extraer muestras de las poblaciones para estimas el valor
de \(r\) y determinar el valor de \(\rho\). Una hipĆ³tesis nula mĆ”s utilizada es
\(H_0: \rho = 0 \space | H_A: \rho \neq
0\).
El valor de r se puede estimar por:
\[ r = \frac{n \sum x_i y_i - (\sum x_i)(\sum y_i)}{\sqrt{n \sum x_i^2 - (\sum x_i)^2} \sqrt{n \sum y_i^2 - ( \sum y_i)^2}} \]
Ejemplo El propĆ³sito del estudio de Kwast-Rabben y
colaboradores, fue analizar los potenciales somatosensoriales evocados
(SEPs) y su interrelaciĆ³n seguida de la estimulaciĆ³n de los dĆgitos I,
III y V de la mano. Los investigadores querĆan establecer un antecedente
para criterio de referencia en una poblaciĆ³n control. Por lo tanto se
reclutaron sujetos control sanos para el estudio. En un futuro este
estudio podrĆa ser importante ya que los SEPs control se podrĆan usar
para establecer disturbios funcionales en pacientes con sospecha de
lesiĆ³n en la raĆz cervical que presentan dolor, y sĆntomas sensoriales.
En el estudio se estimularon los dedos con una intensidad por debajo del
punto de dolor. Las respuestas medulares se registraron con electrodos
fijos adheridos con crema adherente a la piel del sujeto. Una de las
relaciones de interĆ©s fue la correlaciĆ³n entre la estatura del sujeto
(cm) y la latencia medular pico (Cv) del SEP. Los datos obtenidos se
muestran en EXA_C09_S07_01.csv
.
<- read_csv("~/Dropbox/GitHub/ProbEstad/DataSets/ch09_all/EXA_C09_S07_01.csv", show_col_types = FALSE)
SEP plot(CV ~ HEIGHT, data = SEP, pch = 20, xlab = "Estatura (cm)", ylab = "Latencia pico (Cv)")
# cor.test(HEIGHT, CV, alternative = c("two.sided"), method = c("pearson"), conf.level = 0.95)
cor.test(~ HEIGHT + CV, data = SEP, alternative = c("two.sided"), method = c("pearson"), conf.level = 0.95)
Pearson's product-moment correlation
data: HEIGHT and CV
t = 19.781, df = 153, p-value < 2.2e-16
alternative hypothesis: true correlation is not equal to 0
95 percent confidence interval:
0.7967316 0.8869721
sample estimates:
cor
0.8478829
El propĆ³sito del estudio de Brown y Presley fue caracterizar la
hepatitis A aguda, en pacientes mayores de 40 aƱos. Revisaron en forma
retrospectiva los registros de 20 pacientes que fueron diagnosticados
con hepatitis A aguda, que no fueron hospitalizados. De interƩs fue el
hecho que se usĆ³ la edad (en aƱos) para predecir los niveles de
bilirrubina (mg/dl). Los datos colectados estƔn en
EXR_C09_S07_01.csv
.
<- read_csv("~/Dropbox/GitHub/ProbEstad/DataSets/ch09_all/EXR_C09_S07_01.csv", show_col_types = FALSE)
Hepa plot(BILI ~ AGE, data = Hepa, pch = 20, xlab = "Edad (aƱos)", ylab = "Nivel de Bilirrubina (mg/dl)")
cor.test(~ AGE + BILI, data = Hepa, alternative = c("two.sided"), method = c("pearson"), conf.level = 0.95)
Pearson's product-moment correlation
data: AGE and BILI
t = 2.2331, df = 18, p-value = 0.03848
alternative hypothesis: true correlation is not equal to 0
95 percent confidence interval:
0.02927797 0.75306959
sample estimates:
cor
0.4657643
# Linear model
<- lm(BILI ~ AGE, data = Hepa)
Hepa_lm abline(a = Hepa_lm$coefficients[1], b = Hepa_lm$coefficients[2], col = 2)
summary(Hepa_lm)
Call:
lm(formula = BILI ~ AGE, data = Hepa)
Residuals:
Min 1Q Median 3Q Max
-7.203 -2.927 -1.529 2.812 9.263
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -2.9842 4.5962 -0.649 0.5244
AGE 0.1793 0.0803 2.233 0.0385 *
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 4.414 on 18 degrees of freedom
Multiple R-squared: 0.2169, Adjusted R-squared: 0.1734
F-statistic: 4.987 on 1 and 18 DF, p-value: 0.03848