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:

  1. Los valores de la variable independiente \(X\) se suponen fijos, son valores predeterminados considerados no aleatorios.
  2. La variable \(X\) se considera medida sin error.
  3. 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.
  4. Las varianzas de las diferentes sub-poblaciones de \(Y\) se consideran iguales \(\sigma^2\).
  5. 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.
  6. 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.

Waist <- read_csv("~/Dropbox/GitHub/ProbEstad/DataSets/ch09_all/EXA_C09_S03_01.csv", show_col_types = FALSE)
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
Waist_lm <- lm(Y ~ X, data = Waist)
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.

Scores <- read_csv("~/Dropbox/GitHub/ProbEstad/DataSets/ch09_all/EXR_C09_S03_02.csv", show_col_types = FALSE)
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 
Scores_lm <- lm(Y ~ X, data = Scores)
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
Scores_lm_0 <- lm(Y ~ X - 1, data = Scores)
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.

SEP <- read_csv("~/Dropbox/GitHub/ProbEstad/DataSets/ch09_all/EXA_C09_S07_01.csv", show_col_types = FALSE)
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.

Hepa <- read_csv("~/Dropbox/GitHub/ProbEstad/DataSets/ch09_all/EXR_C09_S07_01.csv", show_col_types = FALSE)
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
Hepa_lm <- lm(BILI ~ AGE, data = Hepa)
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