8-Simulación de modelos de regresión

Los datos beauty consisten en evaluaciones de estudiantes a profesores, los estudiantes calificaron belleza y calidad de enseñanza para distintos cursos en la Universidad de Texas. Las evaluaciones de curso se realizaron al final del semestre y tiempo después \(6\) estudiantes que no llevaron el curso realizaron los juicios de belleza.

Ajustamos el siguiente modelo de regresión lineal usando las variables edad (age), belleza (btystdave), sexo (female) e inglés no es primera lengua (nonenglish) para predecir las evaluaciones del curso (courseevaluation).

beauty <- readr::read_csv("https://raw.githubusercontent.com/tereom/est-computacional-2018/master/data/beauty.csv")
#> Parsed with column specification:
#> cols(
#>   .default = col_double()
#> )
#> See spec(...) for full column specifications.
fit_score <- lm(courseevaluation ~ age + btystdave + female + nonenglish, 
                data = beauty)
  1. La instructora \(A\) es una mujer de \(50\) años, el inglés es su primera lengua y tiene un puntaje de belleza de \(-1\). El instructor B es un hombre de \(60\) años,

su primera lengua es el inglés y tiene un puntaje de belleza de \(-0.5\). Simula \(1000\) generaciones de la evaluación del curso de estos dos instructores. En tus simulaciones debes incorporar la incertidumbre en los parámetros y en la predicción.

Para hacer las simulaciones necesitarás la distribución del vector de coeficientes \(\beta\), este es normal con media:

coef(fit_score)
#> (Intercept)         age   btystdave      female  nonenglish 
#>     4.24446    -0.00259     0.14103    -0.21030    -0.33223

y matriz de varianzas y covarianzas \(\sigma^2 V\), donde \(V\) es:

summary(fit_score)$cov.unscaled
#>             (Intercept)       age btystdave    female nonenglish
#> (Intercept)     0.07076 -1.33e-03 -3.79e-03 -1.05e-02  -2.20e-03
#> age            -0.00133  2.65e-05  8.78e-05  1.32e-04  -1.79e-06
#> btystdave      -0.00379  8.78e-05  3.83e-03 -2.71e-04  -1.21e-04
#> female         -0.01049  1.32e-04 -2.71e-04  9.66e-03  -5.58e-05
#> nonenglish     -0.00220 -1.79e-06 -1.21e-04 -5.58e-05   3.80e-02

y \(\sigma\) se calcula como \(\sigma=\hat{\sigma}\sqrt{(df)/X}\), donde X es una generación de una distribución \(\chi ^2\) con \(df\) (\(458\)) grados de libertad \(\hat{\sigma}\) es:

summary(fit_score)$sigma
#> [1] 0.532

y \(df\) (los grados de libertad) se obtienen:

summary(fit_score)$df[2]
#> [1] 458

Una vez que obtengas una simulación del vector \(\beta\) generas simulaciones para los profesores usando el modelo de regresión lineal y las simulaciones de los parámetros.

  • Realiza un histograma de la diferencia entre la evaluación del curso para \(A\) y \(B\).

  • ¿Cuál es la probabilidad de que \(A\) obtenga una calificación mayor?

  1. En el inciso anterior obtienes simulaciones de la distribución conjunta \(p(\tilde{y},\beta,\sigma^2)\) donde \(\beta\) es el vector de coeficientes de la regresión lineal. Para este ejercicio nos vamos a enfocar en el coeficiente de belleza (\(\beta_3\)), realiza \(6000\) simulaciones del modelo (como en el inciso anterior) y guarda las realizaciones de \(\beta_3\).
  • Genera un histograma con las simulaciones de \(\beta_3\).

  • Calcula la media y desviación estándar de las simulaciones y comparalas con la estimación y desviación estándar del coeficiente obtenidas usando summary.