Práctica 3

Métodos de regresión

REGRESIÓN Y CORRELACIÓN

Objetivos

  • Ajustar modelos de regresión lineal simple y múltiple estimando los valores de sus parámetros
  • Obtener información adicional sobre los modelos de regresión (contrastes de significación de los parámetros, test de bondad de ajuste,…)
  • Contrastar las hipótesis del modelo de regresión lineal
  • Ajustar un modelo de regresión cuadrático
  • Estudiar la correlación entre variables.
  • APÉNDICE: Regresión Múltiple

    Regresión

El objetivo del Análisis de regresión es determinar una función matemática sencilla que describa el comportamiento de una variable dados los valores de otra u otras variables. En el Análisis de regresión simple, se pretende estudiar y explicar el comportamiento de una variable que notamos y, y que llamaremos variable explicada, variable dependiente o variable de interés, a partir de otra variable, que notamos x, y que llamamos variable explicativa, variable independiente o variable de predicción. El principal objetivo de la regresión es encontrar la función que mejor explique la relación entre la variable dependiente y las independientes.

Para cumplir dicho objetivo, el primer paso que debe realizar el investigador, es representar las observaciones de ambas variables en un gráfico llamado diagrama de dispersión o nube de puntos. A partir de esta representación el investigador puede especificar la forma funcional de la función de regresión.

A menudo se supone que la relación que guardan la variable dependiente y las independientes es lineal. En estos casos, se utlizan los modelos de regresión lineal. Aunque las relaciones lineales aparecen de forma frecuente, también es posible considerar otro tipo de relación entre las variables, que se modelizan mediante otros modelos de regresión, como pueden ser el modelo de regresión cuadrático o parabólico o el modelo de regresión hiperbólico.

Teoría de la Regresión: Consiste en la búsqueda de una “función” que exprese lo mejor posible el tipo de relación entre dos o más variables.

Correlación

La correlación está íntimamente ligada con la regresión en el sentido de que se centra en el estudio del grado de asociación entre variables. Por lo tanto, una variable independiente que presente un alto grado de correlación con una variable dependiente será muy útil para predecir los valores de ésta última. Cuando la relación entre las variables es lineal, se habla de correlación lineal. Una de las medidas más utilizadas para medir la correlación lineal entre variables es el coeficiente de correlación lineal de Pearson.

En esta práctica se mostrará cómo ajustar un modelo de regresión con R, prestando especial atención a los modelos de regresión lineal. Además, enseñaremos como calcular e interpretar algunas medidas de correlación.

Regresión lineal simple

La regresión lineal simple supone que los valores de la variable dependiente, a los que llamaremos yi, pueden escribirse en función de los valores de una única variable independiente, los cuales notaremos por xi, según el siguiente modelo lineal

\( y_i = \beta_0 + \beta_1 x_i\)        [1]

Expresión 1: Modelo lineal simple

donde \( \beta_0 \) y \( \beta_1 \), son los parámetros desconocidos que vamos a estimar.

Habitualmente, al iniciar un estudio de regresión lineal simple se suelen representar los valores de la variable dependiente y de la variable independiente de forma conjunta mediante un diagrama de dispersión para determinar si realmente existe una relación lineal entre ambas. Para realizar un diagrama de dispersión en R utilizaremos la orden plot

 > plot(x,y)

donde x e y son los valores de las variables independiente y dependiente, respectivamente. En caso de que en el diagrama de dispersión se aprecie un patrón lineal entre las dos variables, se podrá asumir una cierta relación lineal entre ambas variables y se procederá a ajustar el modelo de regresión lineal simple.

Después de comprobar gráficamente la relación lineal entre las variables, el siguiente paso es la estimación de los valores de los parámetros \( \beta_0 \) y \( \beta_1 \) que aparecen en la fórmula (1) a partir de un conjunto de datos. Para ello, podemos utilizar la función lm de R, cuya sintaxis es la siguiente

>  lm(formula, data)

 donde formula indica la relación que guardan la variable dependiente y la variable independiente.

Por ejemplo:

> lm(formula = y  ~ x, data=midataset)

Algunas peculiaridades sobre este argumento:

  •  Las partes izquierda (variable dependiente) y derecha (variable independiente) de la fórmula vienen separadas por el símbolo ~ , que puede escribirse con la secuencia de comandos AltGr + 4 + espacio.
  • Por defecto, la función devuelve un valor para \( \hat{\beta}_{0} \). En determinadas ocasiones, interesa que dicho valor sea igual a 0, lo cual se indica en la fórmula del siguiente modo:

> lm(formula = y  ~0 +  x, data=midataset)

  •  data es el conjunto de datos en el que se encuentran las variables que se utilizan en la fórmula. Este argumento es optativo, aunque es muy recomendable usarlo para una mayor claridad en la fórmula. Para ver la diferencia, observemos las siguientes llamadas a la función lm:

 > lm(formula = y  ~ x, data=midataset)

 > lm(formula =midataset$y  ~ midataset$x)

 Ambas llamadas son equivalentes, pero en la primera de ellas se aprecia mucho mejor cuál es la fórmula que indica la relación entre las variables.

 Veamos un ejemplo sencillo:

  Supuesto Práctico 1

 La siguiente tabla incluye información acerca del peso (en kg.) y la altura (en cm.) de 12 individuos:

\( \begin{matrix}  \hline {\bf peso} & {\bf altura}  \\ \hline 74 &   168 \\  92 &   196 \\ 63 &   170 \\ 72  & 175 \\ 58 &   162 \\ 78 &   169 \\ 85 &   190 \\ 85 &   186 \\ 73 &   176 \\ 62 &   170 \\ 80 &   176 \\ 72 &   179 \\ \hline \end{matrix} \)

Tabla1: Datos del Ejemplo 1

En primer lugar, vamos a almacenar los datos de las dos variables en dos vectores.

> peso <- c(74, 92, 63, 72, 58, 78, 85, 85, 73, 62, 80, 72)

> altura <- c(168, 196, 170, 175, 162, 169, 190, 186, 176, 170, 176, 179)

Supongamos que nuestro objetivo es determinar el peso de un individuo a partir de su altura o, lo que es lo mismo, supongamos que la variable dependiente es peso y que la variable independiente es altura. Vamos a representar el diagrama de dispersión de las dos variables para determinar si la relación existente entre ambas puede considerarse lineal, y por tanto, tiene sentido plantear un modelo de regresión lineal simple.

 > plot(altura, peso)

Diagram de dispersión del Peso en función de la Altura`Figura 1: Diagrama de Dispersión

 A la vista del gráfico de dispersión, se puede asumir un cierto grado de relación lineal entre ambas variables, por lo que procedemos al ajuste del modelo lineal.

>  reg_lin <- lm(peso ~ altura)

>  reg_lin

Call:
lm(formula = peso ~ altura)

Coefficients:
(Intercept)       altura  
    -80.222        0.877 

Por defecto, la salida que muestra la función lm incluye únicamente las estimaciones para los parámetros, en nuestro caso \( \hat{\beta}_{0} \) y \( \hat{\beta}_{1} \). Por tanto, el modelo lineal puede escribirse del siguiente modo:

\( Peso_i =  -80.222 + 0.877 Altura_i\)

Expresión 2: Expresión lineal  del Peso en función de la Altura

Estos dos parámetros pueden interpretarse del siguiente modo: -80.222  es el valor del peso para una persona de altura 0, lo cual no tiene sentido. De hecho, en multitud de ocasiones la interpretación del parámetro \( \hat{\beta}_{0} \) no es relevante y todo el interés recae sobre la interpretación del resto de parámetros. El parámetro \( \hat{\beta}_{1} \) es igual a 0.877 indica que, por término medio, cada centímetro de incremento en la altura de una persona supone un incremento de 0.877 kg. en su peso.

Podemos obtener más información sobre el modelo de regresión que hemos calculado aplicando la función summary al objeto que contiene los datos de la regresión, al cual hemos llamado reg_lin en este ejemplo.

 > summary(reg_lin)

Call:
lm(formula = peso ~ altura)

Residuals:
Min     1Q Median     3Q    Max
-6.872 -4.084 -1.196  3.038 10.005

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -80.2220    29.8888  -2.684 0.022934 *
altura        0.8770     0.1692   5.184 0.000411 ***

Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 5.572 on 10 degrees of freedom
Multiple R-squared:  0.7288,    Adjusted R-squared:  0.7017
F-statistic: 26.87 on 1 and 10 DF,  p-value: 0.0004106

Esta salida contiene una información más completa sobre el análisis. Así, por ejemplo, encontramos información sobre los residuos (en el apartado Residuals), que se definen como la diferencia entre el verdadero valor de la variable dependiente y el valor que pronostica el modelo de regresión. Cuanto más pequeños sean estos residuos mejor será el ajuste del modelo a los datos y más acertadas serán las predicciones que se realicen a partir de dicho modelo.

En la tabla Coefficients encontramos los valores de los parámetros que aparecían en la salida por defecto junto a su error estándar. Cada parámetro aparece acompañado del valor de un estadístico t de Student y un p-valor que sirven para contrastar la significación del parámetro en cuestión, es decir, para resolver los siguientes contrastes de hipótesis:

\( H_{0}\equiv{\beta}_{0} = 0 \hspace{4mm} vs \hspace{4mm}H_{1}\equiv{\beta}_{0} \neq 0 \)

\( H_{0}\equiv{\beta}_{1} = 0 \hspace{4mm} vs \hspace{4mm}H_{1}\equiv{\beta}_{1} \neq 0 \)

Expresión 3: Contraste de hipótesis de los parámetros de regresión

Lo que se pretende mediante estos contrastes es determinar si los efectos de la constante y de la variable independiente son realmente importantes para de explicar la variable dependiente o si, por el contario, pueden considerarse nulos.

En nuestro ejemplo, los p-valores que nos ayudan a resolver estos contrastes son 0.0229 y 0.0004, ambos menores que 0.05. Así, considerando un nivel del significación del 5%, rechazamos la hipótesis nula en ambos contrastes, de manera que podemos suponer ambos parámetros significativamente distintos de 0.

Por último, en la parte final de la salida, encontramos el valor de (Multiple R-squared) y de ajustado (Adjusted R-squared), que son indicadores de la bondad del ajuste de nuestro modelo a los datos.  oscila entre 0 y 1, de manera que, valores de  próximos a 1 indican un buen ajuste del modelo lineal a los datos. Por otro lado,  ajustado es similar a , pero penaliza la introducción en el modelo de variables independientes poco relevantes a la hora de explicar la variable dependiente. Por tanto,  ajustado <=  . En nuestro ejemplo,  = 0.7288 y  ajustado = 0.7017, por lo que podemos concluir que el modelo lineal se ajusta de forma aceptable a nuestros datos. La última línea de la salida incluye un estadístico F de Snedecor y el p-valor correspondiente que se utilizan para resolver el siguiente contraste:

\( H_{0}\equiv{\beta}_{i} = 0 \hspace{4mm} \forall i \)

\( H_{1}\equiv{\beta}_{i} \neq 0 \hspace{4mm} \textrm{para al menos un i}  \)

Expresión 4: Contraste de hipótesis de la pendiente (Contraste ómnibus)

que se conoce habitualmente como contraste ómnibus. Mediante este contraste se comprueba si, de forma global, el modelo lineal es apropiado para modelizar los datos. En nuestro ejemplo, el p-valor asociado a este contraste es inferior a 0.05 por lo que, al 5% de significación podemos rechazar la hipótesis nula y afirmar que, efectivamente, el modelo lineal es adecuado para nuestro conjunto de datos.

R nos permite dibujar la recta de regresión lineal sobre el diagrama de dispersión mediante la orden abline. De este modo podemos visualizar la distancia existente entre los valores observados y los valores que el modelo pronostica (esto es, los residuos).

> plot(altura, peso)

> abline(reg_lin)

Diagrama de dispersión y recta de regresiónFigura 2: Diagrama de Dispersión y recta de regresión

Un aspecto importante cuando se trabaja con modelos de regresión lineal es la comprobación de las hipótesis que deben de cumplirse para poder utilizar este tipo de modelos. Estas suposiciones hacen referencia a los residuos y pueden resumirse en los siguientes puntos:

  • Normalidad de los residuos
  • Independencia de los residuos
  • Homocedasticidad (igualdad de las varianzas de los residuos)
  • Linealidad de los residuos

Al aplicar la función plot sobre el objeto que contiene la información del modelo obtenemos 4 gráficos que nos ayudan para la validación del modelo. Estos gráficos son:

  • Valores predichos frente a residuos
  • Gráfico Q-Q de normalidad
  • Valores predichos frente a raíz cuadrada de los residuos estandarizados (en valor absoluto)
  • Residuos estandarizados frente a leverages

> plot(reg_lin)

Esperando para confirmar cambio de página…
Esperando para confirmar cambio de página…
Esperando para confirmar cambio de página…
Esperando para confirmar cambio de página…

Nota: Para pasar de un gráfico al siguiente basta con hacer Clik con el ratón o presionar Enter sobre el gráfico en cuestión

 Residuals vs Fitted  Norma Q-Q
 Scale location (Fitted values vs sqrt standarized residuals )  Residuals vs Laverage

Figuras 3, 4, 5 y 6: Gráficos para la validación del modelo

Los gráficos 3 y 5 se utilizan para contrastar gráficamente la independencia, la homocedasticidad y la linealidad de los residuos. Idealmente, los residuos deben estar aleatoriamente distribuidos a lo largo del gráfico, sin formar ningún tipo de patrón.

El gráfico Q- Q, por su parte, se utiliza para contrastar la normalidad de los residuos. Lo deseable es que los residuos estandarizados estén lo más cerca posible a la línea punteada que aparece en el gráfico.

El gráfico de  leverages frente a los residuos estandarizados se utiliza para detectar puntos con una influencia importante en el cálculo de las estimaciones de los parámetros. En caso de detectarse algún punto fuera de los límites que establecen las líneas discontinuas debe estudiarse este punto de forma aislada para detectar, por ejemplo, si la elevada importancia de esa observación se debe a un error.

Los gráficos parecen indicar que los residuos son aleatorios, independientes y homocedásticos. Sin embargo, no parece que los residuos sigan una distribución normal. Vamos a confirmar si esto es así mediante métodos analíticos.

Para comprobar la normalidad, aplicaremos a los residuos el test de normalidad de Kolmogorov-Smirnov, que en R se calcula a través de la función ks.test, cuya sintaxis es la siguiente:

> ks.test (x, distrib)

donde

  • x es un vector numérico con los datos a los que vamos a aplicar el test (en nuestro caso, los residuos)
  • distrib indica la distribución de referencia que se usará en el contraste (en nuestro caso, la distribución normal, por lo que distrib = pnorm)

Al realizar un análisis de regresión lineal, R guarda automáticamente los residuos en el objeto que almacena la información de la regresión (y que nosotros hemos llamado reg_lin). Para acceder a estos residuos, escribiremos $residuals a continuación del nombre del objeto que contiene la información del análisis. Por tanto, podemos realizar el contraste de Kolmogorov-Smirnov del siguiente modo:

> ks.test(reg_lin$residuals, “pnorm”)

One-sample Kolmogorov-Smirnov test

data:  reg_lin$residuals
D = 0.45506, p-value = 0.008639
alternative hypothesis: two-sided
Los resultados del test nos confirman lo que se intuía en el gráfico Q-Q: a un 5% de significación los residuos no siguen una distribución normal, puesto que el p-valor que se obtiene (0.008639) es menor que 0.05.

Por último, contrastemos la independencia de los residuos mediante el test de Durbin-Watson. La función que calcula este test se llama dwtest y se encuentra dentro del paquete lmtest. Por lo que lo primero que tenemos que hacer es instalar y cargar dicho paquete. Puedes encontrar más información sobre la instalación y cargas de paquetes en la práctica 2.

> install.packages(“lmtest”)  #Instalación del paquete

> library(lmtest) #Carga del paquete Ahora ya podemos utilizar la función dwtest, cuya sintaxis es

>dwtest (formula)

donde

  • formula indica la relación que guardan la variable dependiente y la independiente, y debe coincidir con la que se ha empleado en la función lm.

> dwtest(peso~altura)  

Durbin-Watson test

data:  peso ~ altura
DW = 2.4568, p-value = 0.8001
alternative hypothesis: true autocorrelation is greater than 0

En este caso, con un p-valor de 0.8001 no podemos rechazar la hipótesis de que los residuos son independientes.

Supuesto Práctico 2

Una nueva medición sobre los mismos 12 individuos del ejemplo 1 nos permite conocer ahora datos sobre su contorno de cintura (en cm.) y su edad

\( \begin{matrix}  \hline {\bf peso} & {\bf altura} &  {\bf cintura } &  {\bf edad} \\ \hline 74 &   168 &  62 &   25 \\ 92 &   196 &  75 &   31 \\ 63 &   170 &  60 &   29 \\ 72 &   175 &  71 &   64 \\ 58 &   162 &  66 &   44 \\ 78 &   169 &  62 &   41 \\ 85 &   190 &  79 &   37 \\ 85 &   186 &  74 &   35 \\ 73 &   176 &  70 &   34 \\ 62 &   170 &  66 &   29 \\ 80 &   176 &  71 &   19 \\ 72 &   179 &  69 &   50 \\ \hline \end{matrix} \)

Tabla2: Datos del Ejemplo 2

Vamos a ajustar un nuevo modelo de regresión lineal que incorpore la información de estas nuevas variables. En primer lugar, vamos a crear dos vectores numéricos, uno para cada variable nueva

> cintura <- c(62, 75, 60, 71, 66, 62, 79, 74, 70, 66, 71, 69)

> edad <- c(25, 31, 29, 64, 44, 41, 37, 35, 34, 29, 19, 50)

Y vamos a ajustra un modelo de regresión lineal (cintura en función de la edad):

> reg_lin <- lm(cintura ~ edad )
> reg_lin

Call:
lm(formula = cintura ~ edad)
Coefficients:
(Intercept)         edad  
   66.50997      0.06137  

> summary(reg_lin)

Call:
lm(formula = cintura ~ edad)
Residuals:
    Min      1Q  Median      3Q     Max
-8.2897 -3.9188 -0.0081  3.8285 10.2193
Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept) 66.50997    5.73594   11.60 4.03e-07 ***
edad         0.06137    0.14981    0.41    0.691    

Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 6.002 on 10 degrees of freedom
Multiple R-squared:  0.01651,   Adjusted R-squared:  -0.08184
F-statistic: 0.1678 on 1 and 10 DF,  p-value: 0.6907

 El modelo podría escribirse tal y como sigue:

\( cintura_i =  66.50997 + 0.06137 edad_i\)

Expresión 5: Modelo pedido

Correlación lineal

Para calcular el coeficiente de correlación lineal entre dos variables en R se utiliza la orden cor, cuya sintaxis es la siguiente:

>cor (x, y, method = c(“pearson” “kendall”, “spearman”))

donde

  • x hace referencia a la primera de las variables
  • y hace referencia a la segunda de las variables
  • method indica el método que se va a utilizar para calcular el coeficiente de correlación lineal. Las posibles opciones son: pearson (método que se considera por defecto), kendall y spearman. Puedes encontrar más información sobre estos 3 métodos de cálculo del coeficiente de correlación lineal en el siguiente enlace: http://www.napce.org/documents/research-design-yount/22_correlation_4th.pdf

Ejemplo 3

Vamos a calcular el coeficiente de correlación lineal de Pearson entre las variables peso y altura:

> cor(peso, altura)

[1] 0.8537051

También es posible calcular de forma simultánea la correlación entre un conjunto de variables almacenada en un data frame. Por ejemplo:

> cor(datos)

              peso      altura   cintura        edad
peso     1.0000000  0.85370507 0.6740509 -0.16523717
altura   0.8537051  1.00000000 0.8380164 -0.04509011
cintura  0.6740509  0.83801636 1.0000000  0.12847242
edad    -0.1652372 -0.04509011 0.1284724  1.00000000

En este caso, en lugar de un único valor numérico, la función cor devuelve una matriz simétrica con las correlaciones entre las variables.

Habitualmente, se está interesado en contrastar si la correlación lineal entre pares de variables puede considerarse 0 o no. Es decir, se quiere resolver el contraste

\( H_{0}\equiv \rho = 0 \)

\( H_{1}\equiv \rho \neq 0 \)

Expresión 6: Contraste sobre la correlación lineal

donde ρ representa el coeficiente de correlación lineal. Este contraste se resuelve en R usando la función cor.test

>cor.test(x, y, alternative = c(“two.sided”, “less”, “greater”), method = c(“pearson”, “kendall”, “spearman”), conf.level = 0.95)

donde

  • x, y, method son los mismos parámetros que se usan en la función cor
  • alternative indica cuál va a ser la hipótesis alternativa del contraste. Por defecto se considera que la hipótesis alternativa es  (two.sided), aunque también pueden considerarse las hipótesis alternativas  (less) o  (greater).
  • conf.level indica el nivel de confianza que se usará en el contraste (por defecto, 0.95)

En el Ejemplo 3 vamos a contrastar la significación de la correlación entre las variables peso y altura:

> cor.test (peso, altura)

Pearson’s product-moment correlation

data:  peso and altura
t = 5.1841, df = 10, p-value = 0.0004106
alternative hypothesis: true correlation is not equal to 0
95 percent confidence interval:
0.5485726 0.9581621
sample estimates:
cor
0.8537051

El p-valor asociado a este contraste es de 0.0004106 < 0.05, por lo que rechazamos la hipótesis de que la correlación lineal entre estas dos variables sea 0.

  Otros modelos de regresión: regresión cuadrática

Aunque los modelos de regresión lineal (tanto simple como múltiple) funcionan bien en una amplia mayoría de situaciones, en ocasiones es necesario considerar modelos más complejos para conseguir un mejor ajuste a los datos.

Un ejemplo de este tipo de modelos es la regresión cuadrática. El modelo más sencillo de regresión cuadrática es el siguiente:

\( y_i = \hat {\beta}_0 + \hat {\beta}_1 x_{1i }+ \hat {\beta}_2 x_{2i}^2\)

Expresión 7: Regresión cuadrática

Para ajustar un modelo de regresión cuadrático en R basta con indicar en el argumento formula de la función lm que una de las variables independientes está elevada al cuadrado mediante el símbolo ^2.

Ejemplo 4

Calcular los valores de las estimaciones \(  \hat {\beta}_0  \), \(  \hat {\beta}_1  \) y \(  \hat {\beta}_2  \) en el modelo de regresión:

\( Pesos = \hat {\beta}_0 + \hat {\beta}_1 Altura+ \hat {\beta}_2 Edad^2\)

Expresión 8: Modelo cuadrático: Peso en función de la altura y la edad

> lm(formula = peso ~ altura + edad^2)

Call:
lm(formula = peso ~ altura + edad^2)

Coefficients:
(Intercept) altura edad
-75.2688 0.8711 -0.1073

\( Pesos_i = -75.2688 + 0.8711 Altura_i – 0.1073 Edad_{i}^2\)

Expresión 9: Modelo cuadrático: Peso en función de la altura y la edad




Ejercicios

Ejercicios Guiados

Ejercicio guiado 1

El siguiente conjunto de datos contiene información relativa a las calificaciones en Estadística, Química y Geología de 8 alumnos,  como el número de horas diarias que en promedio dedican al estudio

\( \begin{matrix}  \hline {\bf Est} & {\bf Qui} &  {\bf Geo} &  {\bf Horas } \\ \hline 9 &    8.5 &  10 &   5 \\ 2 &    5 &    4 &    0.2 \\ 5 &    7 &    7 &    2 \\ 10 &   10 &   7 &    5.5 \\ 6 &    1 &    3 &    1.5 \\ 4 &    3 &    7 &    1.5 \\ 7 &    6 &    8 &    3 \\ 6 &    8 &    7 &    2.5 \\ \hline \end{matrix} \)

Tabla3: Datos del Ejemplo Guiado 1

a) Crea 4 vectores numéricos, de manera que cada uno contenga los datos de una columna y un data frame llamado Notas con los 4 vectores que acabas de crear

b) Representa el diagrama de dispersión de la nota en estadística y la nota en química

c) Escribe la recta de regresión lineal que surge de considerar la nota en estadística como variable dependiente y la nota en química como variable independiente

d) ¿Son significativos los dos parámetros anteriores? ¿Qué puede decirse del ajuste del modelo a los datos?

e) ¿Cuál sería la recta de regresión en el caso de que se considere un modelo de regresión lineal simple sin constante?

f) Calcula el coeficiente de correlación lineal de Pearson entre ambas variables. ¿Es significativa esta correlación?

g) ¿Cuál sería la recta de regresión lineal si se incluye la nota en geología como variable independiente?


Ejercicio Guiado 1 (Resuelto)

a) Crea 4 vectores numéricos, de manera que cada uno contenga los datos de una columna y un data frame llamado Notas con los 4 vectores que acabas de crear

> Est <- c(9,2,5,10,6,4,7,6)

> Qui <- c(8.5, 5,7,10,1,3,6,8)

> Geo <- c(10,4,7,7,3,7,8,7)

> Horas <- c(5,0.2,2,5.5,1.5,1.5,3,2.5)

> Notas <- data.frame(Est, Qui, Geo, Horas)

Comprobemos que los datos se han guardado correctamente

> Notas

 Est  Qui Geo Horas
1   9  8.5  10   5.0
2   2  5.0   4   0.2
3   5  7.0   7   2.0
4  10 10.0   7   5.5
5   6  1.0   3   1.5
6   4  3.0   7   1.5
7   7  6.0   8   3.0
8   6  8.0   7   2.5

b) Representa el diagrama de dispersión de la nota en estadística y la nota en química

> plot(Notas$Est, Notas$Qui)

 guiado1Figura 7: Diagrama de Dispersión

c) Escribe la recta de regresión lineal que surge de considerar la nota en estadística como variable dependiente y la nota en química como variable independiente.

> reg_lin <- lm(Est ~ Qui, data = Notas)

> reg_lin

Call:
lm(formula = Est ~ Qui, data = Notas)

Coefficients:
(Intercept)          Qui
2.9643       0.5213

Por tanto, la recta de regresión es:

\( Est_i = 2.9643 + 0.5212 Qui_i \)

Expresión 10: Expresión de la recta de regresión

d) ¿Son significativos los dos parámetros anteriores? ¿Qué puede decirse del ajuste del modelo a los datos?

> summary(reg_lin)

Call:
lm(formula = Est ~ Qui, data = Notas)

Residuals:
Min      1Q  Median      3Q     Max
-3.5711 -1.2548  0.1896  1.6587  2.5143

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept)   2.9643     1.8906   1.568    0.168
Qui           0.5213     0.2833   1.840    0.115

Residual standard error: 2.235 on 6 degrees of freedom
Multiple R-squared:  0.3608,    Adjusted R-squared:  0.2542
F-statistic: 3.386 on 1 and 6 DF,  p-value: 0.1153

Puesto que los p-valores asociados al contraste t de Student para ambos parámetros (0.168 y 0.115) son mayores que 0.05, podemos considerar que ambos parámetros no son significativamente distintos de 0.

Por otra parte, el valor de \( R^2 \) (0.3608) nos lleva a concluir que el ajuste del modelo a los datos es bastante pobre.

e) ¿Cuál sería la recta de regresión en el caso de que se considere un modelo de regresión lineal simple sin constante?

> reg_lin2 <- lm(Est ~ 0 + Qui, data = Notas)

> reg_lin2

Call:
lm(formula = Est ~ 0 + Qui, data = Notas)

Coefficients:
Qui
0.9249

En este caso, el modelo sería:

\( Est_i = 0.9249 Qui_i \)

f) Calcula el coeficiente de correlación lineal de Pearson entre ambas variables. ¿Es significativa esta correlación?

>  cor(Notas$Est, Notas$Qui)

[1] 0.6006425

La correlación lineal de Pearson entre ambas variables es de 0.6006425

> cor.test(Notas$Est, Notas$Qui)

Pearson’s product-moment correlation

data:  Notas$Est and Notas$Qui
t = 1.8402, df = 6, p-value = 0.1153
alternative hypothesis: true correlation is not equal to 0
95 percent confidence interval:
-0.1803755  0.9171330
sample estimates:
cor
0.6006425

Puesto que el p-valor del contraste es de 0.1153 y, por lo tanto, mayor que 0.05, podemos concluir que la correlación no es significativa, y podría considerarse 0.

g) ¿Cuál sería la recta de regresión lineal si se incluye la nota en geología como variable independiente?

> reg_lin_mul <- lm(Est ~ Qui + Geo, data = Notas)

> reg_lin_mul

Call:
lm(formula = Est ~ Qui + Geo, data = Notas)

Coefficients:
(Intercept)          Qui          Geo
1.7276       0.3535       0.3403 

En este caso, la recta de regresión lineal múltiple podría escribirse como:

\( Est_i = 1.7276 + 0.3535 Qui_i + 0.3403 Geo_i \)

Expresión 11: Recta de regresión lineal múltiple



Ejercicios Propuestos

Ejercicio Propuesto1

La siguiente tabla recoge información sobre el diámetro (en pulgadas), la altura (en pies) y el volumen (en pies cúbicos) del tronco de distintos cerezos en una determinada región

\( \begin{matrix}  \hline {\bf Diametro } & {\bf Altura } &  {\bf Volumen }  \\ \hline  8.3 &  70 &   10.3 \\ 8.6 &  65 &   10.3 \\ 8.8 &  63 &   10.2 \\ 10.5 & 72 &   16.4 \\ 10.5 & 81 &   18.8 \\ 10.8 & 83 &   19.7 \\ 11 &   66 &   15.6 \\ 11 &   75 &   16.3 \\ \hline \end{matrix} \)

Tabla4. Datos del Ejemplo Propuesto 1

Se pide:

a) Crear un data frame de nombre Cerezos que almacene los datos de los árboles

b) Dibujar el diagrama de dispersión de las variables altura y volumen y determinar si puede existir una cierta relación lineal entre ambas

c) ¿Cuál es la recta de regresión lineal simple que considera a la altura como variable dependiente y al volumen como variable independiente? Interpreta los parámetros de esa recta

d) ¿Son significativos estos parámetros? ¿Qué puede decirse del ajuste del modelo a los datos?

e) ¿Cuál es la correlación lineal de Pearson entre ambas variables? ¿Es significativa?

f) ¿Cuál es la recta de regresión lineal si se considera también como variable independiente el diámetro?

g) Calcular los valores de las estimaciones  \(  \hat {\beta}_0  \), \(  \hat {\beta}_1  \) y \(  \hat {\beta}_2  \)   en el modelo de regresión:

\(  alt_i= \hat {\beta}_0  + \hat {\beta}_1 vol_i  + \hat {\beta}_2 diam{_i}^2  \)

Expresión 12: Modelo de regresión cuadrático


Ejercicio Propuesto 1  (Resuelto)

 a) Crear un data frame de nombre Cerezos que almacene los datos de los árboles

> Cerezos  

 diam alt  vol
1  8.3  70 10.3
2  8.6  65 10.3
3  8.8  63 10.2
4 10.5  72 16.4
5 10.5  81 18.8
6 10.8  83 19.7
7 11.0  66 15.6
8 11.0  75 16.3

b) Dibujar el diagrama de dispersión de las variables altura y volumen y determinar si puede existir una cierta relación lineal entre ambas

propuestoBDiagrama de dispersión de las variables altura frente al volumen

En el gráfico se aprecia un cierto patrón lineal entre las variables, aunque esto debe confirmarse mediante métodos analíticos.

c) ¿Cuál es la recta de regresión lineal simple que considera a la altura como variable dependiente y al volumen como variable independiente? Interpreta los parámetros de esa recta.

 Call:
lm(formula = alt ~ vol, data = Cerezos)

Coefficients:
(Intercept)          vol
48.336        1.601

La recta de regresión lineal simple es

\( alt_i =  48.336 + 1.601 vol_i  \)

 Expresión 13: Recta de regresión de la altura en función del volumen

Los dos parámetros de la recta se interpretan del siguiente modo: 48.336 es la altura esperada para un cerezo que tiene un volumen de 0 pies cúbicos. Por otra parte, por cada pie cúbico de incremento en el volumen del tronco del cerezo, se espera un aumento en su altura de 1.601 pies.

d) ¿Son significativos estos parámetros? ¿Qué puede decirse del ajuste del modelo a los datos?

 Para responder a estas preguntas, necesitamos la información adicional sobre el modelo que nos proporciona la función summary.

Call:
lm(formula = alt ~ vol, data = Cerezos)

Residuals:
Min      1Q  Median      3Q     Max
-7.3161 -1.9013  0.3668  2.6995  5.1706

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept)  48.3363     6.1662   7.839 0.000228 ***
vol           1.6013     0.4071   3.934 0.007680 **

Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 4.211 on 6 degrees of freedom
Multiple R-squared:  0.7206,    Adjusted R-squared:  0.674
F-statistic: 15.47 on 1 and 6 DF,  p-value: 0.00768

Considerando un nivel de significación del 5%, ambos parámetros son significativamente distintos de 0, ya que los p-valores asociados a los contrastes t de Student de los dos parámetros son inferiores a 0.05.

El ajuste del modelo a los datos es aceptable, ya que el valor de \( R^2 \) es de 0.7206.

e) ¿Cuál es la correlación lineal de Pearson entre ambas variables? ¿Es significativa?

El coeficiente de correlación lineal de Pearson entre las dos variables es de 0.8488805.

Con un p-valor de 0.00768 < 0.05, rechazamos la hipótesis de que el coeficiente de correlación lineal de Pearson entre ambas variables pueda considerarse 0.

f) ¿Cuál es la recta de regresión lineal si se considera también como variable independiente el diámetro?

Call:
lm(formula = alt ~ vol + diam)

Coefficients:
(Intercept)          vol         diam  
     85.340        3.231       -6.135  

En este caso, la recta de regresión lineal múltiple es:

\( alt_i = 85.340 + 3.231 vol_i – 6.135 diam_i \)

Expresión 14: Recta de regresión lineal múltiple

g) Calcular los valores de las estimaciones  [latex]  \hat {\beta}_0  [/latex], \(  \hat {\beta}_1  \) y \(  \hat {\beta}_2  \)  en el modelo de regresión:

\(  alt_i= \hat {\beta}_0  + \hat {\beta}_1 vol_i  + \hat {\beta}_2 diam{_i}^2  \)

Expresión 15: Modelo de regresión cuadrático

Call:
lm(formula = alt ~ vol + diam2)

Coefficients:
(Intercept)          vol        diam2
55.830        3.158       -0.304   

En este caso, el modelo de regresión cuadrático puede escribirse del siguiente modo:

\( alt_i = 55.83 + 3.158 vol_i – 0.304 diam_{i}^2 \)

Expresión 16: Modelo de regresión cuadrática

Solución del Ejercicio Propuesto


APÉNDICE: Regresión múltiple

El modelo de regresión múltiple es la extensión a k variables explicativas del modelo de regresión simple. En general, una variable de interés y depende de varias variables x1, x2, …, xk y no sólo de una única variable de predicción x. Por ejemplo, para estudiar la contaminación atmosférica, parece razonable considerar más de una variable explicativa, como pueden la temperatura media anual, el número de fábricas, el número de habitantes, etc. Además de las variables observables, la variable de interés puede depender de otras desconocidas para el investigador. Un modelo de regresión representa el efecto de estas variables en lo que se conoce como error aleatorio o perturbación.

Un modelo de regresión teórico en el que las variables se pueden relacionar mediante una función de tipo lineal, podemos expresarlo de la siguiente forma:

\(  y = \beta_0  + \beta_1  x_1  + \beta_2  x_2 +… +  \beta_k  x_k + \epsilon  \)

Expresión 17: Expresión del modelo de regresión múltiple

donde

  • y es la variable de interés que vamos a predecir, también llamada variable respuesta o variable dependiente
  • \( x_1, x_2, …., x_k  \)  son  variables independientes, explicativas o de predicción
  •  \( \beta_1 , \beta_2, …, \beta_k   \) son los parámetros desconocidos que vamos a estimar
  •  \( \epsilon  \) es el error aleatorio o perturbación, que representa el efecto de todas las variables que pueden afectar a la variable dependiente y no están incluidas en el modelo de regresión.

Ejemplos de modelos de regresión múltiple:

  • El consumo de combustible de un vehículo, cuya variación puede ser explicada por la velocidad media del mismo y por el tipo de carretera. Podemos incluir en el término de error, variables como el efecto del conductor, las condiciones meteorológicas, etc.
  • El presupuesto de una universidad, cuya variación puede ser explicada por el número de alumnos. También podríamos considerar en el modelo variables como el número de profesores, el número de laboratorios, la superficie disponible de instalaciones, personal de administración, etc.

Si se desea explicar los valores de una variable aleatoria y, mediante k variables, que a su vez toman n valores, tenemos entonces

\(  y = \beta_0  + \beta_1  x_{1i } + \beta_2  x_{2i } +… +  \beta_k  x_{ki } + \epsilon_i  \hspace{10mm}; \hspace{10mm} i =1, 2, …, n  \)

Expresión 18: Regresión múltiple

Las perturbaciones o errores aleaotorios deben verificar las siguientes hipótesis:

  • Su esperanza es cero
  • Su varianza es constante
  • Son independientes entre sí
  • Su distribución es normal

Los parámetros desconocidos,  \( \beta_1 , \beta_2, …, \beta_k   \) se estiman mediante el método de mínimos cuadrados, resultando la ecuación estimada de regresión dada por

\(  y= \hat {\beta}_0  + \hat {\beta}_1 x_{1i }+ \hat {\beta}_2 x_{2i }+… +  \beta_k  x_{ki } + \epsilon_i \)

Expresión 19: Ecuación de regresión estimada

donde

  • cada coeficiente  \(  \hat {\beta}_i \) representa el efecto sobre la variable respuesta, y, cuando la variable aumenta en una unidad y las demás variables permanecen constantes. Puede interpretarse como el efecto diferencial de esta variable sobre la variable respuesta cuando controlamos los efectos de las otras variables.
  • \(  \hat {\beta}_0 \)  es el valor de la variable respuesta  ajustada cuando todas las variables explicativas toman el valor cero.

En R, el paso de un modelo de regresión lineal simple a un modelo de regresión lineal múltiple es muy sencillo: basta con añadir variables independientes al argumento formula de la función lm separadas por el signo +. Veamos un ejemplo:

Supuesto Práctico 5

La siguiente tabla incluye información acerca del peso (en kg.), la altura (en cm.), contorno de cintura (en cm.) y la edad de 12 individuos

\( \begin{matrix}  \hline {\bf peso } & {\bf altura } &  {\bf cintura } &  {\bf edad } \\ \hline  74 &   168 &  62 &   25 \\ 92 &   196 &  75 &   31 \\ 63 &   170 &  60 &   29 \\ 72 &   175 &  71 &   64 \\ 58 &   162 &  66 &   44 \\ 78 &   169 &  62 &   41 \\ 85 &   190 &  79 &   37 \\ 85 &   186 &  74 &   35 \\ 73 &   176 &  70 &   34 \\ 62 &   170 &  66 &   29 \\ 80 &   176 &  71 &   19 \\ 72 &   179 &  69 &   50 \\ \hline \end{matrix} \)

Tabla 5. Datos del Supuesto Práctico 5

Vamos a ajustar un nuevo modelo de regresión lineal (múltiple, en este caso) que incorpore la información de todas las variables. En primer lugar, vamos a crear cuatro vectores numéricos, uno para cada variable

> peso <- c(74, 92, 63, 72, 58, 78, 85, 85, 73, 62, 80, 72)
> altura <- c(168, 196, 170, 175, 162, 169, 190, 186, 176, 170, 176, 179)
> cintura <- c(62, 75, 60, 71, 66, 62, 79, 74, 70, 66, 71, 69)
> edad <- c(25, 31, 29, 64, 44, 41, 37, 35, 34, 29, 19, 50)

Y vamos a agrupar la información relativa a las 4 variables de las que disponemos en un data frame al que pondremos por nombre datos:

> datos <- data.frame(peso, altura, cintura, edad)
> datos
peso altura cintura edad
1    74    168      62   25
2    92    196      75   31
3    63    170      60   29
4    72    175      71   64
5    58    162      66   44
6    78    169      62   41
7    85    190      79   37
8    85    186      74   35
9    73    176      70   34
10   62    170      66   29
11   80    176      71   19
12   72    179      69   50

Ajustamos el modelo de regresión lineal múltiple

> reg_lin_mul <- lm(peso ~ altura + cintura + edad)
> summary(reg_lin_mul)

Call:
lm(formula = peso ~ altura + cintura + edad)
Residuals:
    Min      1Q  Median      3Q     Max
-7.5822 -2.8758 -0.6746  2.6828  9.9842
Coefficients:
             Estimate Std. Error t value Pr(>|t|)  
(Intercept) -78.03017   35.37744  -2.206   0.0585 .
altura        0.93629    0.34941   2.680   0.0279 *
cintura      -0.13261    0.60578  -0.219   0.8322  
edad         -0.09672    0.15806  -0.612   0.5576  

Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 6.024 on 8 degrees of freedom
Multiple R-squared:  0.7464,    Adjusted R-squared:  0.6513
F-statistic:  7.85 on 3 and 8 DF,  p-value: 0.009081

El modelo podría escribirse tal y como sigue:

\(  peso_i = -78.03017 + 0.93629 altura_i – 0.13261 cintura_i – 0.09672 edad_i \)

Expresión 20: Modelo pedido

Tanto la interpretación como la comprobación de la significación de los parámetros se realizan de forma similar al caso en que se cuenta con una única variable independiente. Igualmente, la validación se lleva a cabo del mismo modo que para la regresión lineal simple.

Con respecto a las representaciones gráficas, se pueden representar gráficos de dispersión de la variable dependiente con respecto a cada una de las variables independientes mediante el comando plot, como se ha mostrado anteriormente.




Ejercicios

Ejercicio Guiados

Ejercicio guiado 2

Una empresa fabricante de cereales para el desayuno desea conocer la ecuación que permita predecir las ventas (en miles de euros) en función de los gastos en publicidad infantil en televisión (en miles de euros), la inversión en publicidad en radio (en miles de euros) y la inversión en publicidad en los periódicos (en miles de euros). Se realiza un estudio en el que se reúnen los datos mensuales correspondientes a los últimos 20 meses. Estos datos se muestran en la siguiente tabla

\( \begin{matrix}  \hline {\bf Ventas } & {\bf Publ-TV } &  {\bf Publ-radio } &  {\bf  Publ-per } \\ \hline  10.0 & 1.0 &  50.0 & 0.4 \\ 12.0 & 1.2 &  57.0 & 0.4 \\ 11.0 & 1.3 &  56.0 & 0.42 \\ 13.0 & 1.4 &  55.0 & 0.5 \\ 12.0 & 1.5 &  60.0 & 0.4 \\ 14.0 & 1.7 &  65.0 & 0.44 \\ 16.0 & 1.75 & 69.0 & 0.4 \\ 12.0 & 1.3 &  67.0 & 0.44 \\ 14.0 & 1.45 & 68.0 & 0.46 \\ 11.0 & 0.9 &  67.0 & 0.46 \\ 10.0 & 0.8 &  97.0 & 0.45 \\ 19.0 & 0.9 &  66.0 & 1.1 \\ 8.5 &  0.8 &  65.0 & 0.3 \\ 8.0 &  1.0 &  60.0 & 0.5 \\ 9.0 &  1.7 &  70.0 & 0.45 \\ 13.0 & 1.8 &  110.0 & 0.4 \\ 16.0 & 1.85 & 75.0 & 0.8 \\ 18.0 & 1.9 &  80.0 & 0.9 \\ 20.0 & 2.0 &  85.0 & 0.9 \\ 22.0 & 2.0 &  90.0 & 1.1 \\ \hline \end{matrix} \)

Tabla 6: Datos Ejercicio guiado1

Se pide:

    1. Ajustar un modelo de regresión lineal múltiple. Obtener una estimación de los parámetros del modelo y su interpretación
    2. Contrastar la significación del modelo propuesto
    3. ¿Puede eliminarse alguna variable del modelo? Realiza los contrastes de significación individuales
    4. Coeficiente de determinación y de determinación corregido

Ejercicio Guiado 2 (Resuelto)

1. Ajustar un modelo de regresión lineal múltiple. Obtener una estimación de los parámetros del modelo y su interpretación

Comencemos introduciendo los datos en R. Para ello, crearemos un vector numérico para cada una de las 4 variables que intervienen y, a continuación, las agruparemos en un data.frame.

> Ventas <- c(10, 12, 11, 13, 12, 14, 16, 12, 14, 11, 10, 19, 8.5, 8, 9, 13, 16, 18, 20, 22)
> Pub_TV <- c(1.3, 1.4, 1.5, 1.7, 1.75, 1.3, 1.45, 0.9, 0.8, 0.9, 0.8, 1, 1.7, 1.8, 1.85, 1.9, 2, 2, 1.3, 1.4)
> Pub_Radio <- c(56, 55,60, 65, 69, 67, 68, 67, 97, 66, 65, 60, 70, 110, 75, 80, 85, 90, 56, 55)
> Pub_Prensa <- c(0.4,0.4, 0.42, 0.5, 0.4, 0.44, 0.4, 0.44, 0.46, 0.46, 0.45, 1.1, 0.3, 0.5, 0.45, 0.4, 0.8, 0.9, 0.9, 1.1)
> datos <- data.frame(Ventas, Pub_TV, Pub_Radio, Pub_Prensa)
> datos
  Ventas Pub_TV Pub_Radio Pub_Prensa
1    10.0   1.30        56       0.40
2    12.0   1.40        55       0.40
3    11.0   1.50        60       0.42
4    13.0   1.70        65       0.50
5    12.0   1.75        69       0.40
6    14.0   1.30        67       0.44
7    16.0   1.45        68       0.40
8    12.0   0.90        67       0.44
9    14.0   0.80        97       0.46
10   11.0   0.90        66       0.46
11   10.0   0.80        65       0.45
12   19.0   1.00        60       1.10
13    8.5   1.70        70       0.30
14    8.0   1.80       110       0.50
15    9.0   1.85        75       0.45
16   13.0   1.90        80       0.40
17   16.0   2.00        85       0.80
18   18.0   2.00        90       0.90
19   20.0   1.30        56       0.90
20   22.0   1.40        55       1.10

Podemos visualizar las primeras líneas del data frame mediante la orden head

> head(datos)
Ventas Pub_TV Pub_Radio Pub_Prensa
1     10   1.30        56       0.40
2     12   1.40        55       0.40
3     11   1.50        60       0.42
4     13   1.70        65       0.50
5     12   1.75        69       0.40
6     14   1.30        67       0.44

Ajustamos el modelo de regresión lineal múltiple

> reg_lin_mul <- lm(Ventas ~ Pub_TV + Pub_Radio + Pub_Prensa, data = datos)
> summary(reg_lin_mul)

Call:
lm(formula = Ventas ~ Pub_TV + Pub_Radio + Pub_Prensa, data = datos)

Residuals:
    Min      1Q  Median      3Q     Max
-3.0764 -1.5515  0.0564  0.9941  4.6174

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)  8.77593    2.96730   2.958  0.00926 **
Pub_TV      -0.08508    1.33711  -0.064  0.95005    
Pub_Radio   -0.03836    0.03608  -1.063  0.30349    
Pub_Prensa  13.34598    2.03645   6.554 6.64e-06 ***

Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 2.187 on 16 degrees of freedom
Multiple R-squared:  0.7428,    Adjusted R-squared:  0.6946
F-statistic:  15.4 on 3 and 16 DF,  p-value: 5.61e-05

El modelo puede escribirse tal y como sigue:

\(  Ventas_i = 8.776 – 0.085 PubTV_i – 0.038 PubRadio_i + 13.345 PubPrensa_i \)

Expresión 21 : Modelo pedido

El valor de la constante (8.776) indica cuál sería el valor de las ventas en el caso de que todas las variables independientes tomasen el valor 0, es decir, en el caso en que no se invirtiera nada en ningún tipo de publicidad. Los valores de los parámetros asociados a cada una de las variables indican el aumento o disminución en las ventas por cada unidad de incremento en la variable en cuestión. Así, por ejemplo, por cada unidad de aumento en el gasto en publicidad en radio, las ventas disminuyen en 0.038 unidades. Igualmente, por cada unidad de aumento en el gasto en publicidad en prensa, las ventas aumentan en 13.345 unidades.

2. Contrastar la significación del modelo propuesto

Vamos a comprobar si alguno de los parámetros que conforman el modelo puede ser significativamente distinto de 0 (y, consecuentemente, la regresión tiene sentido) o si, por el contrario, si todos ellos pueden suponerse igual a 0. Para ello, resolveremos los siguientes contrastes:

\( H_{0}\equiv{\beta}_{1} ={\beta}_{2}   = {\beta}_{3} = 0  \)

                                       \( H_{1}\equiv{\beta}_{i} \neq 0 \hspace{4mm} \textrm{para al menos un i}; \hspace{4mm} i=1,2,3   \)

Expresión 22: Contraste pedido

F-statistic:  15.4 on 3 and 16 DF,  p-value: 5.61e-05

En la parte final de la salida anterior aparece el estadístico de contraste y el p-valor que nos permiten resolver el contraste anterior. En este caso, el p-valor asociado a este contraste es inferior a 0.05 de manera que podemos concluir que, asumiendo un nivel de significación del 5%, al menos uno de los parámetros es significativamente distinto de 0 y, por tanto, tiene sentido plantear un modelo de regresión lineal para estos datos.

3. ¿Puede eliminarse alguna variable del modelo? Realiza los contrastes de significación individuales

En este caso, los contrastes a resolver son los siguientes:

\( H_{0}\equiv{\beta}_{i}  = 0; \hspace{4mm} i=1,2,3  \)

            \( H_{1}\equiv{\beta}_{i} \neq 0 \hspace{4mm} \textrm{para al menos un i}   \)

Expresión 23: Contraste pedido

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept)  8.77593    2.96730   2.958  0.00926 **
Pub_TV      -0.08508    1.33711  -0.064  0.95005
Pub_Radio   -0.03836    0.03608  -1.063  0.30349
Pub_Prensa  13.34598    2.03645   6.554 6.64e-06 ***

Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Los valores bajo la columna t value de la salida anterior se corresponden con los estadísticos de contraste asociados a cada uno de los contrastes de significación de los parámetros. En la columna de la derecha, Pr(>|t|), aparecen los p-valores asociados a cada contraste. Así, considerando un nivel de significación del 5%, vemos que tanto el parámetro asociado a la variable Pub_TV como el asociado a la variable Pub_Radio pueden suponerse iguales a 0, pues sus p-valores son mayores que 0.05. Por ello, ambas variables podrían eliminarse del modelo, pues no están relacionadas linealmente con la variable dependiente. Entonces, se debería ajustar un nuevo modelo sin considerar estas dos variables. Por el contrario, el parámetro constante y el parámetro asociado a la variable Pub_Prensa tienen p-valores menores que 0.05. Ello nos lleva a rechazar la hipótesis nula del contraste correspondiente y a concluir la significación de ambos parámetros.

4. Coeficiente de determinación y de determinación corregido

Multiple R-squared:  0.7428,    Adjusted R-squared:  0.6946

En la salida del modelo de regresión múltiple encontramos los dos valores que nos piden en este apartado. Por un lado, el coeficiente de determinación toma el valor 0.7428. Este coeficiente, que oscila entre 0 y 1, indica “cómo de bien” se ajustan los datos al modelo lineal planteado.  Cuánto más próximo a 1 esté este coeficiente, mejor será el ajuste de los datos al modelo. En nuestro caso, con un valor cercano a 0.75 concluimos que el ajuste de los datos al modelo es bueno.

El coeficiente de determinación tiene el inconveniente de que su valor aumenta al añadir nuevas variables al modelo, aun cuando estas variables no son relevantes a la hora de explicar la variable dependiente. El coeficiente de determinación corregido soluciona este problema, puesto que penaliza la entrada en el modelo de variables no relevantes para la explicación de la variable dependiente. Los valores del coeficiente de determinación corregido también oscilan entre 0 y 1 y su interpretación es similar a la del coeficiente de determinación. En este ejemplo, el valor del coeficiente de determinación corregido es de 0.7, lo que indica un ajuste medio-bueno de los datos al modelo.



Ejercicios Propuestos

Ejercicio Propuesto 2

Dada la cantidad de gasolina en porcentaje con respecto a la cantidad del petróleo en crudo, denotada por y. Se quiere saber si se puede expresar como combinación lineal de cuatro variables: la gravedad del crudo, la presión del vapor del crudo, la temperatura para la cual se ha evaporado un 10% y la temperatura para la cual se ha evaporado el 100%, a partir de los siguientes datos:

\( \begin{matrix}  \hline {\bf y } & {\bf Gravedad-crudo } &  {\bf Presión-vapor } &  {\bf temperatura10 } &  {\bf temperatura100}   \\ \hline 6,9 &  38,4 & 6,1 &  220 &  235 \\ 14,4 & 40,3 & 4,8 &  231 &  307 \\ 7,4 &  40,0 & 6,1 &  217 &  212 \\ 8,5 &  31,8 & ,2 &   316 &  365 \\ 8,0 &  40,8 & 3,5 &  210 &  218 \\ 2,8 &  41,3    & 1,8 & 267 &  235 \\ 5,0 &  38,1    & 1,2 & 274 &  285 \\ 12,2 & 50,8 & 8,6 & 190 &  205 \\ 10,0 & 32,2 & 5,2 &  236 &  267 \\ 15,2 & 38,4 & 6,1 &  220 &  300 \\ 26,8 & 40,3 & 4,8 &  213 &  367 \\ 14,0 & 32,2 & 2,4 &  284 &  351 \\ 14,7 & 31,8 & ,2 &   316 &  379 \\ 6,4 &  41,3 & 1,8 &  267 &  275 \\ 17,6 & 38,1 & 1,2 &  274 &  365 \\ 22,3 & 50,8 & 8,6 &  190 &  275 \\ 24,8 & 32,2 & 5,2 &  236 &  360 \\ 26,0 & 38,4 & 6,1 &  220 &  365 \\ 34,9 & 40,3 & 4,8 &  231 &  395 \\ 18,2 & 40,0 & 6,1 &  217 &  272 \\ 23,2 & 32,2 & 2,4 &  284 &  424 \\ 18,0 & 31,8 & ,2 &   316 &  428 \\ 13,1 & 40,8 & 3,5 &  210 &  273 \\ 16,1 & 41,3 & 1,8 &  267 &  358 \\ 32,1 & 38,1 & 1,2 &  274 &  444 \\ 34,7 & 50,8 & 8,6 &  190 &  345 \\ 31,7 & 32,2 & 5,2 &  236 &  402 \\ 33,6 & 38,4 & 6,1 &  220 &  410 \\ 30,4 & 40,0 & 6,1 &  217 &  340 \\ 26,6 & 40,8 & 3,5 &  210 &  347 \\ 27,8 & 41,3 & 1,8 &  267 &  416 \\ 45,7 & 50,8 & 8,6 &  190 &  407 \\ \hline \end{matrix} \)

Tabla 7: Datos del ejercicio propuesto 1

Se pide:

      1. Ajustar un modelo de regresión lineal múltiple. Obtener una estimación de los parámetros del modelo y su interpretación
      2. Contrastar la significación del modelo propuesto
      3. ¿Puede eliminarse alguna variable del modelo? Realiza los contrastes de significación individuales
      4. Coeficiente de determinación y de determinación corregido.

Ejercicio Propuesto 3

Se pretende estudiar la posible relación lineal entre el precio de pisos en miles de euros, en una conocida ciudad española y variables como la superficie en m2 y la antigüedad del inmueble en años. Para ello, se realiza un estudio, en el que se selecciona de forma aleatoria una muestra estratificada representativa de los distintos barrios de la ciudad. Los datos aparecen en la siguiente tabla.

\( \begin{matrix}  \hline {\bf Precio } & {\bf Superficie } &  {\bf Antiguedad } \\ \hline  200 &  100 &  20 \\ 120 &  70 &   15 \\ 155 &  120 &  30 \\ 310 &  150 &  20 \\ 320 &  90 &   12 \\ 400 &  227 &  400 \\ 100 &  75 &   100 \\ 80 &   65 &   80 \\ 75 &   80 &   75 \\ 169 &  150 &  169 \\ 110 &  120 &  110 \\ 210 &  100 &  210 \\ 200 &  125 &  200 \\ 180 &  137 &  180 \\ 140 &  90 &   140 \\ 95 &   110 &  95 \\ \hline \end{matrix} \)

Tabla 8: Datos del Ejercicio Propuesto 2

Se pide:

      1. Ajustar un modelo de regresión lineal múltiple. Obtener una estimación de los parámetros del modelo y su interpretación
      2. Contrastar la significación del modelo propuesto
      3. ¿Cuánto será el precio estimado del piso en una conocidad ciudad española para una superficie en 130 m2 y 35 años de antigüedad?
      4. ¿Puede eliminarse alguna variable del modelo? Razona la respuesta
      5. Coeficiente de determinación y de determinación corregido. Interpretación.

Ejercicio Propuesto 2  (Resuelto)

Dada la cantidad de gasolina en porcentaje con respecto a la cantidad del petróleo en crudo, denotada por y. Se quiere saber si se puede expresar como combinación lineal de cuatro variables: la gravedad del crudo, la presión del vapor del crudo, la temperatura para la cual se ha evaporado un 10% y la temperatura para la cual se ha evaporado el 100%, a partir de los siguientes datos:

\( \begin{matrix}  \hline {\bf y } & {\bf Gravedad-crudo } &  {\bf Presión-vapor } &  {\bf temperatura10 } &  {\bf temperatura100}   \\ \hline 6,9 &  38,4 & 6,1 &  220 &  235 \\ 14,4 & 40,3 & 4,8 &  231 &  307 \\ 7,4 &  40,0 & 6,1 &  217 &  212 \\ 8,5 &  31,8 & ,2 &   316 &  365 \\ 8,0 &  40,8 & 3,5 &  210 &  218 \\ 2,8 &  41,3    & 1,8 & 267 &  235 \\ 5,0 &  38,1    & 1,2 & 274 &  285 \\ 12,2 & 50,8 & 8,6 & 190 &  205 \\ 10,0 & 32,2 & 5,2 &  236 &  267 \\ 15,2 & 38,4 & 6,1 &  220 &  300 \\ 26,8 & 40,3 & 4,8 &  213 &  367 \\ 14,0 & 32,2 & 2,4 &  284 &  351 \\ 14,7 & 31,8 & ,2 &   316 &  379 \\ 6,4 &  41,3 & 1,8 &  267 &  275 \\ 17,6 & 38,1 & 1,2 &  274 &  365 \\ 22,3 & 50,8 & 8,6 &  190 &  275 \\ 24,8 & 32,2 & 5,2 &  236 &  360 \\ 26,0 & 38,4 & 6,1 &  220 &  365 \\ 34,9 & 40,3 & 4,8 &  231 &  395 \\ 18,2 & 40,0 & 6,1 &  217 &  272 \\ 23,2 & 32,2 & 2,4 &  284 &  424 \\ 18,0 & 31,8 & ,2 &   316 &  428 \\ 13,1 & 40,8 & 3,5 &  210 &  273 \\ 16,1 & 41,3 & 1,8 &  267 &  358 \\ 32,1 & 38,1 & 1,2 &  274 &  444 \\ 34,7 & 50,8 & 8,6 &  190 &  345 \\ 31,7 & 32,2 & 5,2 &  236 &  402 \\ 33,6 & 38,4 & 6,1 &  220 &  410 \\ 30,4 & 40,0 & 6,1 &  217 &  340 \\ 26,6 & 40,8 & 3,5 &  210 &  347 \\ 27,8 & 41,3 & 1,8 &  267 &  416 \\ 45,7 & 50,8 & 8,6 &  190 &  407 \\ \hline \end{matrix} \)

Tabla 7: Datos del ejercicio propuesto 1

Se pide:

      1. Ajustar un modelo de regresión lineal múltiple. Obtener una estimación de los parámetros del modelo y su interpretación
      2. Contrastar la significación del modelo propuesto
      3. ¿Puede eliminarse alguna variable del modelo? Realiza los contrastes de significación individuales
      4. Coeficiente de determinación y de determinación corregido.

Solución

1. Ajustar un modelo de regresión lineal múltiple. Obtener una estimación de los parámetros del modelo y su interpretación

Comenzamos introduciendo los datos en R. Para ello, creamos un vector numérico que recoja los datos de cada variable y, a continuación, un data.frame que agrupe a los cuatro vectores creados (y, Gravedad, Presion, Temp_Evap_10, Temp_Evap_100).

> datos <- data.frame(y, Gravedad, Presion, Temp_Evap_10, Temp_Evap_100)

A continuación, vamos a crear el modelo de regresión múltiple utilizando el comando lm

Call:
lm(formula = y ~ Gravedad + Presion + Temp_Evap_10 + Temp_Evap_100,
    data = datos)

Residuals:
   Min     1Q Median     3Q    Max
-3.513 -1.709  0.087  1.610  4.763

Coefficients:
               Estimate Std. Error t value Pr(>|t|)    
(Intercept)   -9.809720  10.160831  -0.965   0.3429    
Gravedad       0.237989   0.102665   2.318   0.0283 *  
Presion        0.657347   0.372128   1.766   0.0886 .  
Temp_Evap_10  -0.138987   0.028950  -4.801  5.2e-05 ***
Temp_Evap_100  0.153170   0.006574  23.299  < 2e-16 ***

Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 2.303 on 27 degrees of freedom
Multiple R-squared:  0.9598,    Adjusted R-squared:  0.9539
F-statistic: 161.2 on 4 and 27 DF,  p-value: < 2.2e-16

2. Contrastar la significación del modelo propuesto

Vamos a comprobar ahora si, al menos, una de las variables independientes del modelo guarda relación lineal con la variable dependiente. En tal caso, concluiremos que la regresión lineal tiene sentido en este caso.

El contraste que debemos resolver es el siguiente:

\( H_{0}\equiv{\beta}_{1} ={\beta}_{2}   = {\beta}_{3} = {\beta}_{4}= 0  \)

                           \( H_{1}\equiv{\beta}_{i} \neq 0 \hspace{4mm} \textrm{para al menos un i}; \hspace{4mm} i=1,2,3,4   \)

Expresión 24: Contraste pedido

En este ejemplo, el estadístico de contraste vale 161.2. El p-valor asociado es un valor muy pequeño (muy cercano a 0) y, consecuentemente, menor que 0.05. Por ello, considerando un nivel de significación del 5%, podemos concluir la significación de la regresión. Es decir, al menos una de las variables independientes estudiadas tiene una relación lineal significativa con la variable dependiente.

3. ¿Puede eliminarse alguna variable del modelo? Realiza los contrastes de significación individuales

Los p-valores asociados a las variables Gravedad, Temp_Evap_10 y Temp_Evap_100 son inferiores a 0.05. Consecuentemente, considerando un nivel de significación del 5% rechazamos la hipótesis nula correspondiente y concluimos que el coeficiente asociado a dichas variables es significativamente distinto de 0. Es decir, las tres variables son relevantes a la hora de explicar la variable dependiente. Por el contrario, los p-valores asociados al parámetro constante y a la variable Presion superan el valor 0.05, lo que nos lleva a concluir que ambos parámetros pueden asumirse iguales a 0. Esto equivale a decir que no existe ningún tipo de asociación lineal entre la variable Presion y la variable dependiente, de manera que no es aconsejable utilizar la variable Presion para explicar la variable dependiente. Convendría, por tanto, ajustar un nuevo modelo eliminando el parámetro constante y la variable Presion.

4. Coeficiente de determinación y de determinación corregido.

El valor del coeficiente de determinación es 0.959 y el de determinación corregido es 0.953. Esto significa que el 95.9% de la variabilidad presente en la variable dependiente puede explicarse por el modelo propuesto. El ajuste de los datos al modelo es, por tanto, excelente.

Ejercicio Propuesto 2 (Resuelto)


Ejercicio Propuesto 3  (Resuelto)

Se pretende estudiar la posible relación lineal entre el precio de pisos en miles de euros, en una conocida ciudad española y variables como la superficie en m2 y la antigüedad del inmueble en años. Para ello, se realiza un estudio, en el que se selecciona de forma aleatoria una muestra estratificada representativa de los distintos barrios de la ciudad. Los datos aparecen en la siguiente tabla.

\( \begin{matrix}  \hline {\bf Precio } & {\bf Superficie } &  {\bf Antiguedad } \\ \hline  200 &  100 &  20 \\ 120 &  70 &   15 \\ 155 &  120 &  30 \\ 310 &  150 &  20 \\ 320 &  90 &   12 \\ 400 &  227 &  400 \\ 100 &  75 &   100 \\ 80 &   65 &   80 \\ 75 &   80 &   75 \\ 169 &  150 &  169 \\ 110 &  120 &  110 \\ 210 &  100 &  210 \\ 200 &  125 &  200 \\ 180 &  137 &  180 \\ 140 &  90 &   140 \\ 95 &   110 &  95 \\ \hline \end{matrix} \)

Tabla 8: Datos del Ejercicio Propuesto 3

Se pide:

      1. Ajustar un modelo de regresión lineal múltiple. Obtener una estimación de los parámetros del modelo y su interpretación
      2. Contrastar la significación del modelo propuesto
      3. ¿Cuánto será el precio estimado del piso en una conocidad ciudad española para una superficie en 130 m2 y 35 años de antigüedad?
      4. ¿Puede eliminarse alguna variable del modelo? Razona la respuesta
      5. Coeficiente de determinación y de determinación corregido. Interpretación.

Solución

1. Ajustar un modelo de regresión lineal múltiple. Obtener una estimación de los parámetros del modelo y su interpretación

Comenzamos introduciendo los datos en R. Para ello, creamos un vector numérico para cada variable que agrupamos en un data.frame.

> datos <- data.frame (Precio, Superficie, Antigüedad)

Tras introducir los datos ajustamos el modelo de regresión múltiple y el resultado es:

Call:
lm(formula = Precio ~ Superficie + Antigüedad, data = datos)

Residuals:
    Min      1Q  Median      3Q     Max
-83.357 -48.406  -0.784  33.449 167.897

Coefficients:
            Estimate Std. Error t value Pr(>|t|)   
(Intercept) -19.0512    57.0197  -0.334  0.74362   
Superficie    1.9241     0.6186   3.111  0.00828 **
Antigüedad   -0.1681     0.2470  -0.680  0.50816   

Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 70.2 on 13 degrees of freedom
Multiple R-squared:  0.515,     Adjusted R-squared:  0.4404
F-statistic: 6.902 on 2 and 13 DF,  p-value: 0.009065

\( Precio_{i} = -19.051+ 1.924 Superficie_{i}  – 0.1684 Antiguedad_{i}  \)

2. Contrastar la significación del modelo propuesto

\( H_{0}\equiv{\beta}_{1} ={\beta}_{2}  = 0  \)

                                       \( H_{1}\equiv{\beta}_{i} \neq 0 \hspace{4mm} \textrm{para al menos un i}; \hspace{4mm} i=1,2   \)

Dado que el p-valor asociado al contraste es menor que 0.05 (0.00906), rechazamos la hipótesis nula del contraste y concluimos que, al menos una de las dos variables independientes consideradas es relevante a la hora de explicar el precio de las viviendas.

3. Cuánto será el precio estimado del piso en una conocidad ciudad española para una superficie en 130 m2 y 35 años de antigüedad?

El precio estimado para un piso de 130 m2 de superficie y 35 años de antigüedad será de 236949 euros.

4. ¿Puede eliminarse alguna variable del modelo? Razona la respuesta

\( H_{0}\equiv{\beta}_{i}  = 0 \hspace{4mm} \textrm{para al menos un i}; \hspace{4mm} i=0,1,2  \)

\( H_{1}\equiv{\beta}_{i} \neq 0 \hspace{4mm} \textrm{para al menos un i}; \hspace{4mm} i=0,1,2   \)

Para resolver los contrastes individuales nos fijamos en los p-valores que aparecen en la tabla de coeficientes:

Coefficients:
            Estimate Std. Error t value Pr(>|t|)   
(Intercept) -19.0512    57.0197  -0.334  0.74362   
Superficie    1.9241     0.6186   3.111  0.00828 **
Antigüedad   -0.1681     0.2470  -0.680  0.50816  

5. Coeficiente de determinación y de determinación corregido. Interpretación.

El 51,5% de la variabilidad de la variable Precio se explica por el modelo planteado.

El ajuste de los datos al modelo es moderado-bajo (44.04%).

Ejercicio Propuesto 3 (Resuelto)


Autores: David Molina Muñoz y Ana María Lara Porras. Universidad de Granada. (2017)

Reformulado con MathML en 2020 por Ana María Lara Porras

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *