El dia de hoy, realizaremos ejercicios prácticos para estimar los coeficientes de regresión por medio del método MCO. Para esto analizaremos el siguiente conjunto de datos.

La metodología es simple, cada estudiante tendrá a disposición el código en R, el cual puede ir ejecutándolo paso a paso para entender de mejor manera el ejercicio.

En primer lugar, analizaremos la base de datos:

#  Con este comando limpiamos memoria, es decir eliminamos todos los objetos que estén guardados.
rm(list=ls())

# Cargamos data cars
data("cars")

# Guardamos la data para el analisis.
attach(cars)

# Imprimimos parte de la base de datos para saber como importó.
head(cars)
##   speed dist
## 1     4    2
## 2     4   10
## 3     7    4
## 4     7   22
## 5     8   16
## 6     9   10

Podemos darnos cuenta que la base de datos tiene 50 registros (filas) y 2 campos (columnas). Ahora bien, nos interesa analizar la siguiente relación: la distancia recorrida depende de la velocidad con que se desplaza un vehículo. En este caso, asumiremos que la velocidad sera nuestra variable predictora \(X\) y la distancia recorrida será nuestra variable de respuesta \(Y\).

# Ahora graficamos estos puntos
plot(cars$speed,cars$dist, xlab = "Velocidad", ylab= "Distancia", main= "Grafico de puntos")

Estimadores calculado por minimos cuadrados

En la última sesión, concluimos que \(b_{0}\) y \(b_{i}\) son estimadores para los coeficientes de regresión \(\beta_{0}\) y \(\beta_{i}\) y que aplicando MCO podemos definir que se calculan de la siguiente manera:

\[b_{i}=\frac{\sum{(X_{i}-\bar{X})(Y_{i}-\bar{Y})}}{\sum{(X_{i}-\bar{X})^2}}\] \[b_{0}=\bar{Y}-b_{i}\bar{X}\]

El siguiente código permite hacer el calculo de estos valores:

# Variables auxiliares para guardar sumas.
aux<- sample(0,replace=T,dim(cars)[1])  
aux2<-sample(0,replace=T,dim(cars)[1])  


  for (i in 1:dim(cars)[1]){
    nume<-(cars$speed[i]-mean(cars$speed))*(cars$dist[i]-mean(cars$dist))
    aux[i]<- nume
    deno<-(cars$speed[i]-mean(cars$speed))^2
    aux2[i]<- deno
  }

# Calculamos bi
b_i <- sum(aux)/sum(aux2)
b_i
## [1] 3.932409
# Calculamos bo
b_o<-mean(cars$dist)-b_i*mean(cars$speed)
b_o
## [1] -17.57909

Ahora bien, ya tenemos calculados los estimadores, podemos construir la recta de regresión.

\[Y=-17.5790+3.93X\]

y podemos graficarla.

y=-17.5790+(3.93*cars$speed)

# Ahora graficamos 
plot(cars$speed,cars$dist, xlab = "Velocidad", ylab= "Distancia", main= "Grafico de puntos")
lines(cars$speed,y, col="red")

Discusion

  1. Que significado tiene el valor de \(b_{o}\) y \(b_{i}\).
  2. Encontremos el valor de la distancia recorrida cuando el la velocidad es de 45km/hora

Estimación de \(\sigma^2\) y \(\sigma\)

El parámetro \(\sigma^2\) determina la cantidad de variabilidad inherente a un modelo de regresión. Un valor grande o elevado de este parámetro, conducirá que las observaciones estén muy dispersas en torno a la linea de regresión verdadera.En cambio, un valor pequeño \(\sigma^2\) define que las observaciones tenderán a quedar cerca a la linea de regresión verdadera.

Ahora bien, definamos dos conceptos básicos: Valores Ajustados y Residuos. Los valores ajustados son aquellos valores \(\hat{y_{i}}\) obtenidos al reemplazar los valores de \(x_{i}\) en la ecuación de regresión. Los residuos, se calculan realizando la diferencia entre los valores observados de \(y_{i}\) y \(\hat{y_{i}}\).

Se espera, que cuando se obtenga un ajuste de una recta de regresión, la suma de los residuos tenderán a 0, comprobemoslos.

Con el mismo ejemplo inicial, calculemos los valores ajustados \(\hat{y_{i}}\)

# Calculomos los valores ajustados a partir de la recta de regresion
y=b_o+(b_i*cars$speed)
y
##  [1] -1.849460 -1.849460  9.947766  9.947766 13.880175 17.812584 21.744993
##  [8] 21.744993 21.744993 25.677401 25.677401 29.609810 29.609810 29.609810
## [15] 29.609810 33.542219 33.542219 33.542219 33.542219 37.474628 37.474628
## [22] 37.474628 37.474628 41.407036 41.407036 41.407036 45.339445 45.339445
## [29] 49.271854 49.271854 49.271854 53.204263 53.204263 53.204263 53.204263
## [36] 57.136672 57.136672 57.136672 61.069080 61.069080 61.069080 61.069080
## [43] 61.069080 68.933898 72.866307 76.798715 76.798715 76.798715 76.798715
## [50] 80.731124
# Ahora graficamos 
plot(cars$speed,cars$dist, xlab = "Velocidad", ylab= "Distancia", main= "Grafico de puntos", pch=19)

# Graficamos la recta de regresion.
lines(cars$speed,y, col="red")

# Añadimos valores ajustados en verde
points(cars$speed,y, col="green", pch=19)

# Calculamos los residuos
residuos <- cars$dist-y

# Mostramos los residuos
residuos
##  [1]   3.849460  11.849460  -5.947766  12.052234   2.119825  -7.812584
##  [7]  -3.744993   4.255007  12.255007  -8.677401   2.322599 -15.609810
## [13]  -9.609810  -5.609810  -1.609810  -7.542219   0.457781   0.457781
## [19]  12.457781 -11.474628  -1.474628  22.525372  42.525372 -21.407036
## [25] -15.407036  12.592964 -13.339445  -5.339445 -17.271854  -9.271854
## [31]   0.728146 -11.204263   2.795737  22.795737  30.795737 -21.136672
## [37] -11.136672  10.863328 -29.069080 -13.069080  -9.069080  -5.069080
## [43]   2.930920  -2.933898 -18.866307  -6.798715  15.201285  16.201285
## [49]  43.201285   4.268876
# Realizamos la suma de los residuos
sum(residuos)
## [1] 1.847411e-13

Efectivamente, comprobamos que la suma de los residuos cuando se ajusta una recta por medio de MCO tiende a 0.

Ahora, bien la estimación de la varianza se obtiene elevando al cuadros los residuos y sumarlos, lo que se conoce como Suma Cuadrados Error ó SCE y este resultado dividirlo sobre los grados de libertar \(n-2\), por la tanto tenemos que:

\[\sigma^2=s^2= \frac{SCE}{n-2}= \frac{\sum{(y_{i}-\hat{y_{i}})^2}}{n-2}\] Donde la desviación estándar o \(\sigma\) no es mas que \[\sigma=s=\sqrt{\sigma}\]. Calculemos los valores para \(\sigma^2\) e interpretemos su resultado.

# Elevamos al cuadrado los residuos
residuos_cua<-(residuos)^2

# Mostramos resultados obtenido
residuos_cua
##  [1]   14.8183412  140.4096988   35.3759254  145.2563342    4.4936573
##  [6]   61.0364678   14.0249703   18.1050871  150.1852039   75.2972961
## [11]    5.3944640  243.6661751   92.3484524   31.4699707    2.5914889
## [16]   56.8850671    0.2095635    0.2095635  155.1963080  131.6670817
## [21]    2.1745270  507.3923956 1808.4072861  458.2612116  237.3767736
## [26]  158.5827298  177.9407997   28.5096756  298.3169411   85.9672769
## [31]    0.5301966  125.5355043    7.8161466  519.6456357  948.3774313
## [36]  446.7588835  124.0254528  118.0119054  845.0114290  170.8008597
## [41]   82.2482173   25.6955750    8.5902903    8.6077564  355.9375236
## [46]   46.2225301  231.0790557  262.4816250 1866.3509973   18.2233016
# Calculamos SCE
SCE= sum(residuos_cua)

#Mostramos resultados
SCE
## [1] 11353.52
# Calculamos la Varianza estimada
sigma_cua <-SCE/(dim(cars)[1]-2)
  

# Mostramos resultado
sigma_cua
## [1] 236.5317
# Calculamos desviacion estimada
desvia<- sqrt(sigma_cua)

desvia
## [1] 15.37959

Coeficiente de determinación \(r^2\)

Como se observó anteriormente la SCE podría interpretarse como la suma de cuadrados SCE del error puede ser interpretada como una medida de cuánta variación de \(y\) permanece sin ser explicada por el modelo, es decir, cuánta no puede ser atribuida a una relación lineal.

El coeficiente de determinación \(r^2\) se interpreta como la proporción de variación \(y\) observada que puede ser explicada por el modelo de regresión lineal simple (atribuida a una relación lineal aproximada entre \(y\) y \(x\)).

Se calcula de la siguiente manera:

\[r^2= 1- \frac{SCE}{STC}\]

El término suma total de los cuadrados ó STC, es una medida que analiza los \(y\) observados versus la media de muestral de los estos valores.

\[STC= \sum(y_{i}- \hat{y})^2\]

Entre mas alto sea el valor de \(r^2\), mejor se considera el ajustes de la recta de regresión.

Calculen el valor de \(r^2\).