library(dplyr)
library(tidyr)
library(carData)
library(knitr)
library(ggplot2)
library(patchwork)
library(wooldridge)
library(AER)
library(readr) #Leer archivos e importar
library(readxl)
library(see) #Ayuda a visualizar 
library(performance) #Chequear supuestos
library(lmtest)
library(plotrix)
library(performance)

1-Mtcars

data("mtcars")
kable(head(mtcars))
mpg cyl disp hp drat wt qsec vs am gear carb
Mazda RX4 21.0 6 160 110 3.90 2.620 16.46 0 1 4 4
Mazda RX4 Wag 21.0 6 160 110 3.90 2.875 17.02 0 1 4 4
Datsun 710 22.8 4 108 93 3.85 2.320 18.61 1 1 4 1
Hornet 4 Drive 21.4 6 258 110 3.08 3.215 19.44 1 0 3 1
Hornet Sportabout 18.7 8 360 175 3.15 3.440 17.02 0 0 3 2
Valiant 18.1 6 225 105 2.76 3.460 20.22 1 0 3 1
regresion1 <-lm(data = mtcars, mpg~wt+hp+factor(am))
summary(regresion1)
## 
## Call:
## lm(formula = mpg ~ wt + hp + factor(am), data = mtcars)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -3.4221 -1.7924 -0.3788  1.2249  5.5317 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 34.002875   2.642659  12.867 2.82e-13 ***
## wt          -2.878575   0.904971  -3.181 0.003574 ** 
## hp          -0.037479   0.009605  -3.902 0.000546 ***
## factor(am)1  2.083710   1.376420   1.514 0.141268    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 2.538 on 28 degrees of freedom
## Multiple R-squared:  0.8399, Adjusted R-squared:  0.8227 
## F-statistic: 48.96 on 3 and 28 DF,  p-value: 2.908e-11

Interpretaciones 1

\(\beta_0\): en el caso hipotetico en que el wt, hp sean 0 y am sea automatico, el rendimiento esperado va a ser de 34 mpg

\(\beta_1\): Por cada 1000 libras adicionales de peso, el rendimiento disminuye en 2.87 millas por galón

\(\beta_2\): Por cada caballo de fuerza (hp) adicional, el rendimiento disminuye en 0.03 millas por galón

\(\beta_3\): En promedio, los autos con transmisión manual tienen un rendimiento 2.08 millas por galón mayor que los automáticos

\(R^2:\) el modelo explica el 83.99% de la variación del rendimiento (mpg)

Significancia 1

\(\beta_0\) (Intercept): se rechaza la hipotesis nula (H0:B 0 = 0), beta 0 es significativamente distinto a 0, por lo que es valioso para el modelo y se debe mantener en el modelo

\(\beta_1\) (wt): se rechaza la hipotesis nula (H0:B 1 = 0), beta 1 es significativamente distinto a 0, por lo que es valioso para el modelo y se debe mantener en el modelo. Hay una relación significativa entre el peso del vehículo y el rendimiento en millas por galón.

\(\beta_2\) (hp): se rechaza la hipotesis nula (H0:B 2 = 0), beta 2 es significativamente distinto a 0, por lo que es valioso para el modelo y se debe mantener en el modelo. Hay una relación significativa entre la potencia del motor y el rendimiento en millas por galón.

\(\beta_3\) (am): no se rechaza la hipotesis nula (H0:B 3 = 0), beta 3 no es significativamente distinto a 0, por lo que no es valioso para el modelo y se puede eliminar del modelo. No hay evidencia suficiente de una relación significativa entre el tipo de transmisión y el rendimiento en millas por galón.

P valor del modelo: se rechaza la idea de que las variables(peso,potencia y transmision) no infuyen en el consumo del combustible (millas por galon) ya que existe la evidencia estadistica suficiente para decir lo contrario. ya que el p-valor global: 2.908e-11 es menor al nivel de significancia (0.05)

Supuestos 1

Multicolinealidad

check_collinearity(regresion1)
## # Check for Multicollinearity
## 
## Low Correlation
## 
##        Term  VIF   VIF 95% CI adj. VIF Tolerance Tolerance 95% CI
##          wt 3.77 [2.43, 6.37]     1.94      0.26     [0.16, 0.41]
##          hp 2.09 [1.48, 3.46]     1.45      0.48     [0.29, 0.68]
##  factor(am) 2.27 [1.58, 3.77]     1.51      0.44     [0.27, 0.63]
  • wt: no presenta multicolinealidad problemática con las demás variables del modelo.
  • hp: no presenta multicolinealidad problemática con las demás variables del modelo.
  • am: no presenta multicolinealidad problemática con las demás variables del modelo.

Exogeneidad y forma funcional correcta

check_model(regresion1,check="linearity")

resettest(regresion1,power = 2:3, type="fitted")
## 
##  RESET test
## 
## data:  regresion1
## RESET = 5.4857, df1 = 2, df2 = 26, p-value = 0.01029

Interpretación check_model (linearity): El gráfico de referencia permite evaluar visualmente si los residuos se distribuyen de forma aleatoria alrededor de cero. La línea de tendencia es no es relativamente plana y muestra patrones sistemáticos,no se cumple el supuesto de linealidad. En este caso, podría indicar una forma funcional incorrecta.

Interpretación RESET test: La hipótesis nula del test RESET es que la forma funcional del modelo está correctamente especificada. El p-valor (0.01029) es menor a 0.05, se rechaza H0, lo que sugiere que la relación entre estas variables y el rendimiento podría requerir una forma funcional diferente (por ejemplo, términos cuadráticos o logarítmicos).

Heteroscedasticidad

bptest(regresion1)
## 
##  studentized Breusch-Pagan test
## 
## data:  regresion1
## BP = 5.534, df = 3, p-value = 0.1366

Interpretación Bptest: Con base en la prueba de Breusch–Pagan studentizada, se obtiene un p-valor de 0.1366, el cual es mayor al nivel de significancia del 5%. Por lo tanto, no se rechaza la hipótesis nula de homocedasticidad, lo que indica que no existe evidencia estadísticamente significativa de heterocedasticidad en el modelo. En consecuencia, se asume que la varianza de los errores es constante y que las inferencias estadísticas (pruebas t y F) son confiables.

Gráfica 1

g1a <- ggplot(mtcars, aes(x = wt, y = mpg)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Peso vs Rendimiento",
       x = "Peso (1000 lbs)", y = "Millas por galón")

g1b <- ggplot(mtcars, aes(x = hp, y = mpg)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Potencia vs Rendimiento",
       x = "Caballos de fuerza", y = "Millas por galón")

g1c <- ggplot(mtcars, aes(x = factor(am), y = mpg)) +
  geom_boxplot() +
  labs(title = "Transmisión vs Rendimiento",
       x = "Transmisión (0=automático, 1=manual)", y = "Millas por galón")

g1c+ g1a / g1b

2-Swiss

data("swiss")
kable(head(swiss))
Fertility Agriculture Examination Education Catholic Infant.Mortality
Courtelary 80.2 17.0 15 12 9.96 22.2
Delemont 83.1 45.1 6 9 84.84 22.2
Franches-Mnt 92.5 39.7 5 5 93.40 20.2
Moutier 85.8 36.5 12 7 33.77 20.3
Neuveville 76.9 43.5 17 15 5.16 20.6
Porrentruy 76.1 35.3 9 7 90.57 26.6
regresion2 <-lm(data = swiss, Fertility~Education+Catholic+Infant.Mortality)
summary(regresion2)
## 
## Call:
## lm(formula = Fertility ~ Education + Catholic + Infant.Mortality, 
##     data = swiss)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -14.4781  -5.4403  -0.5143   4.1568  15.1187 
## 
## Coefficients:
##                  Estimate Std. Error t value Pr(>|t|)    
## (Intercept)      48.67707    7.91908   6.147 2.24e-07 ***
## Education        -0.75925    0.11680  -6.501 6.83e-08 ***
## Catholic          0.09607    0.02722   3.530  0.00101 ** 
## Infant.Mortality  1.29615    0.38699   3.349  0.00169 ** 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 7.505 on 43 degrees of freedom
## Multiple R-squared:  0.6625, Adjusted R-squared:  0.639 
## F-statistic: 28.14 on 3 and 43 DF,  p-value: 3.15e-10

Interpretaciones 2

\(\beta_0\): En el caso hipotético en que la educación, el porcentaje de católicos y la mortalidad infantil sean 0, el índice de fertilidad esperado sería de 48.67 puntos

\(\beta_1\): Por cada punto porcentual adicional de educación más allá de primaria, la fertilidad disminuye en 0.75 puntos del índice estandarizado

\(\beta_2\): Por cada punto porcentual adicional de población católica, la fertilidad aumenta en 0.09 puntos del índice estandarizado

\(\beta_3\): Por cada punto porcentual adicional en la tasa de mortalidad infantil, la fertilidad aumenta en 1.29 puntos del índice estandarizado

\(R^2:\) El modelo explica el 66.25% de la variación de la fertilidad

Significancia 2

\(\beta_0\) (Intercept): se rechaza la hipotesis nula (H0:B 0 = 0), beta 0 es significativamente distinto a 0, por lo que es valioso para el modelo y se debe mantener en el modelo

\(\beta_1\) (Education): se rechaza la hipotesis nula (H0:B 1 = 0), beta 1 es significativamente distinto a 0, por lo que es valioso para el modelo y se debe mantener en el modelo. Hay una relación significativa entre el nivel de educación y el índice de fertilidad.

\(\beta_2\) (Catholic): se rechaza la hipotesis nula (H0:B 2 = 0), beta 2 es significativamente distinto a 0, por lo que es valioso para el modelo y se debe mantener en el modelo. Hay una relación significativa entre el porcentaje de población católica y el índice de fertilidad.

\(\beta_3\) (Infant.Mortality): se rechaza la hipotesis nula (H0:B 3 = 0), beta 3 es significativamente distinto a 0, por lo que es valioso para el modelo y se debe mantener en el modelo. Hay una relación significativa entre la tasa de mortalidad infantil y el índice de fertilidad.

P valor del modelo: se rechaza la idea de que las variables (nivel de educación, porcentaje de población católica y mortalidad infantil) no influyen en el índice de fertilidad, ya que existe la evidencia estadística suficiente para decir lo contrario. El p-valor global del modelo (3.15e-10) es menor al nivel de significancia (0.05), lo que indica que el modelo en su conjunto es significativamente válido.

Supuestos 2

Multicolinealidad

check_collinearity(regresion2)
## # Check for Multicollinearity
## 
## Low Correlation
## 
##              Term  VIF     VIF 95% CI adj. VIF Tolerance Tolerance 95% CI
##         Education 1.03 [1.00, 193.86]     1.01      0.97     [0.01, 1.00]
##          Catholic 1.05 [1.00,  10.88]     1.03      0.95     [0.09, 1.00]
##  Infant.Mortality 1.04 [1.00,  46.46]     1.02      0.96     [0.02, 1.00]
  • Education: no presenta multicolinealidad problemática con las demás variables del modelo.
  • Catholic: no presenta multicolinealidad problemática con las demás variables del modelo.
  • Infant.Mortality: no presenta multicolinealidad problemática con las demás variables del modelo.

Exogeneidad y forma funcional correcta

check_model(regresion2,check="linearity")

resettest(regresion2,power = 2:3, type="fitted")
## 
##  RESET test
## 
## data:  regresion2
## RESET = 0.15779, df1 = 2, df2 = 41, p-value = 0.8545

Interpretación check_model (linearity): . la línea de tendencia es aproximadamente plana y los puntos no muestran patrones sistemáticos, se cumple el supuesto de linealidad.

Interpretación RESET test: La hipótesis nula del test RESET es que la forma funcional del modelo está correctamente especificada.El p-valor del test es mayor al nivel de significancia (0.05), no se rechaza H0 y se concluye que no hay evidencia de mala especificación funcional en el modelo que relaciona nivel de educación, porcentaje de población católica y mortalidad infantil con el índice de fertilidad.

Heteroscedasticidad

bptest(regresion2)
## 
##  studentized Breusch-Pagan test
## 
## data:  regresion2
## BP = 2.1982, df = 3, p-value = 0.5323

Interpretación Bptest: Con base en la prueba de Breusch–Pagan studentizada, se obtiene un p-valor de 0.5323, el cual es mayor al nivel de significancia del 5%. Por lo tanto, no se rechaza la hipótesis nula de homocedasticidad, lo que indica que no existe evidencia estadísticamente significativa de heterocedasticidad en el modelo regresion2. En consecuencia, se asume que la varianza de los errores es constante y que las inferencias estadísticas son confiables.

Gráfica 2

g2a <- ggplot(swiss, aes(x = Education, y = Fertility)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Educación vs Fertilidad",
       x = "Educación (%)", y = "Fertilidad")

g2b <- ggplot(swiss, aes(x = Catholic, y = Fertility)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Católicos vs Fertilidad",
       x = "Católicos (%)", y = "Fertilidad")

g2c <- ggplot(swiss, aes(x = Infant.Mortality, y = Fertility)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Mortalidad infantil vs Fertilidad",
       x = "Mortalidad infantil (%)", y = "Fertilidad")

g2a / (g2b + g2c)

3-Airquality

data("airquality")
kable(head(airquality))
Ozone Solar.R Wind Temp Month Day
41 190 7.4 67 5 1
36 118 8.0 72 5 2
12 149 12.6 74 5 3
18 313 11.5 62 5 4
NA NA 14.3 56 5 5
28 NA 14.9 66 5 6
regresion3<-lm(data = airquality, Ozone~Solar.R+Wind+Temp)
summary(regresion3)
## 
## Call:
## lm(formula = Ozone ~ Solar.R + Wind + Temp, data = airquality)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -40.485 -14.219  -3.551  10.097  95.619 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept) -64.34208   23.05472  -2.791  0.00623 ** 
## Solar.R       0.05982    0.02319   2.580  0.01124 *  
## Wind         -3.33359    0.65441  -5.094 1.52e-06 ***
## Temp          1.65209    0.25353   6.516 2.42e-09 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 21.18 on 107 degrees of freedom
##   (42 observations deleted due to missingness)
## Multiple R-squared:  0.6059, Adjusted R-squared:  0.5948 
## F-statistic: 54.83 on 3 and 107 DF,  p-value: < 2.2e-16

Radiación Solar: Se espera que a más radiación, haya más reacciones químicas y suba el ozono.(Signo positivo)

Viento: Se espera que el viento “disperse” el ozono, por lo que a más viento, menos concentración.(Signo negativo)

Temperatura: El calor suele acelerar la formación de ozono, por lo que se espera una relación positiva.

Interpretaciones 3

\(\beta_0\):En el caso hipotetico en que la radiacion solar, la velocidad del viento y la temperatura sean 0, la concentración de Ozono esperada sería -64 puntos

\(\beta_1\): Por cada Langley adicional de radiación solar, la concentración de ozono aumenta 0.05 ppb

\(\beta_2\): Por cada milla por hora adicional de velocidad del viento, la concentración de ozono disminuye en 3.33 ppb

\(\beta_3\): Por cada grado Fahrenheit adicional de temperatura, la concentración de ozono aumenta 1.65 ppb

\(R^2:\) el modelo explica el 60.59% de la variación de la concentracion de ozono

La base tiene 42 filas con datos incompletos. Esto puede afectar la estimación porque se disminuye tamaño de muestra y, si esos datos faltantes no son al azar, van a sesgar los resultados del modelo y no representar de manera correcta la realidad

Significancia 3

\(\beta_0\): (Intercept): se rechaza la hipotesis nula (H0:B 0 = 0), beta 0 es significativamente distinto a 0, por lo que es valioso para el modelo y se debe mantener en el modelo por convención estadística, no por interpretación sustantiva

\(\beta_1\): (Solar R.): se rechaza la hipotesis nula (H0:B 1 = 0), beta 1 es significativamente distinto a 0, por lo que es valioso para el modelo y se debe mantener en el modelo. Hay una relación significativa entre la radiación solar y la concentración de ozono.

\(\beta_2\): (Wind): se rechaza la hipotesis nula (H0:B 2 = 0), beta 2 es significativamente distinto a 0, por lo que es valioso para el modelo y se debe mantener en el modelo. Hay una relación significativa entre la velocidad del viento y la concentración de ozono.

\(\beta_3\): (Temp): se rechaza la hipotesis nula (H0:B 3 = 0), beta 3 es significativamente distinto a 0, por lo que es valioso para el modelo y se debe mantener en el modelo. Hay una relación significativa entre la temperatura y la concentración de ozono.

P valor del modelo: se rechaza la idea de que las variables (radiación solar, velocidad del viento y temperatura) no influyen en la concentración de ozono, ya que existe la evidencia estadística suficiente para decir lo contrario. El p-valor global del modelo (2.2e-16) es menor al nivel de significancia (0.05), lo que indica que el modelo en su conjunto es significativamente válido.

Supuestos 3

Multicolinealidad

check_collinearity(regresion3)
## # Check for Multicollinearity
## 
## Low Correlation
## 
##     Term  VIF   VIF 95% CI adj. VIF Tolerance Tolerance 95% CI
##  Solar.R 1.10 [1.01, 1.85]     1.05      0.91     [0.54, 0.99]
##     Wind 1.33 [1.14, 1.80]     1.15      0.75     [0.56, 0.88]
##     Temp 1.43 [1.20, 1.92]     1.20      0.70     [0.52, 0.83]
  • Solar.R: no presenta multicolinealidad problemática con las demás variables del modelo.
  • Wind: no presenta multicolinealidad problemática con las demás variables del modelo.
  • Temp: no presenta multicolinealidad problemática con las demás variables del modelo.

Exogeneidad y forma funcional correcta

check_model(regresion3,check="linearity")

resettest(regresion3,power = 2:3, type="fitted")
## 
##  RESET test
## 
## data:  regresion3
## RESET = 16.858, df1 = 2, df2 = 105, p-value = 4.476e-07

Interpretación check_model (linearity): . La línea de tendencia es no es relativamente plana y muestra patrones sistemáticos,no se cumple el supuesto de linealidad. En este caso, podría indicar una forma funcional incorrecta.

Interpretación RESET test: La hipótesis nula del test RESET es que la forma funcional del modelo está correctamente especificada. El p-valor es menor a 0.05, se rechaza H0, lo que sugiere que la relación entre radiación solar, velocidad del viento y temperatura y la concentración de ozono podría requerir una forma funcional diferente (por ejemplo, términos cuadráticos o logarítmicos).

Heteroscedasticidad

bptest(regresion3)
## 
##  studentized Breusch-Pagan test
## 
## data:  regresion3
## BP = 5.0554, df = 3, p-value = 0.1678

Interpretación Bptest: Con base en la prueba de Breusch–Pagan studentizada, se obtiene un p-valor de 0.1678, el cual es mayor al nivel de significancia del 5%. Por lo tanto, no se rechaza la hipótesis nula de homocedasticidad, lo que indica que no existe evidencia estadísticamente significativa de heterocedasticidad en el modelo regresion3. En consecuencia, se asume que la varianza de los errores es constante y que las inferencias estadísticas son confiables.

Gráfica 3

g3a <- ggplot(airquality, aes(x = Solar.R, y = Ozone)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Radiación solar vs Ozono",
       x = "Radiación solar (lang)", y = "Ozono (ppb)")

g3b <- ggplot(airquality, aes(x = Wind, y = Ozone)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Viento vs Ozono",
       x = "Viento (mph)", y = "Ozono (ppb)")

g3c <- ggplot(airquality, aes(x = Temp, y = Ozone)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Temperatura vs Ozono",
       x = "Temperatura (°F)", y = "Ozono (ppb)")

(g3a + g3b) / g3c

4-Attitude

data("attitude")
kable(head(attitude))
rating complaints privileges learning raises critical advance
43 51 30 39 61 92 45
63 64 51 54 63 73 47
71 70 68 69 76 86 48
61 63 45 47 54 84 35
81 78 56 66 71 83 47
43 55 49 44 54 49 34
regresion4<-lm(data = attitude, rating~complaints+learning+raises)
summary(regresion4)
## 
## Call:
## lm(formula = rating ~ complaints + learning + raises, data = attitude)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -11.6282  -5.8107   0.5115   6.3946  10.3509 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 10.52260    8.30481   1.267    0.216    
## complaints   0.65349    0.13637   4.792 5.82e-05 ***
## learning     0.22069    0.14967   1.475    0.152    
## raises      -0.02864    0.18245  -0.157    0.876    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 6.943 on 26 degrees of freedom
## Multiple R-squared:  0.7083, Adjusted R-squared:  0.6746 
## F-statistic: 21.04 on 3 and 26 DF,  p-value: 3.957e-07

Quejas (complaints): Aunque se esperaba que a más quejas la evaluación fuera peor (signo negativo), el modelo arrojó un signo positivo. Esto posiblemente se debe a que la variable mide la gestión de quejas, no su cantidad, por lo que una mejor gestión se asocia con una evaluación más favorable.

Aprendizaje (learning): Se espera que si los empleados sienten que aprenden, evalúen mejor el ambiente.(Signo positivo)

Incrementos (raises): Se espera que mejores salarios se asocien con una mejor evaluación.(Signo positivo)

El modelo tiene sentido parcialmente desde el punto de vista organizacional: es lógico que la gestión de quejas sea el predictor más fuerte de la evaluación general, ya que es el punto de contacto más directo entre empleados y administración. Sin embargo, el modelo probablemente está omitiendo variables relevantes como el liderazgo directo, las condiciones físicas del trabajo, la carga laboral o la estabilidad del empleo, factores que la literatura organizacional considera determinantes del clima laboral. El hecho de que learning y raises no sean significativos no necesariamente significa que no importan, sino que con solo 30 observaciones el modelo tiene poca potencia estadística para detectar efectos pequeños.

Interpretaciones 4

\(\beta_0\): En el caso hipotetico en que el nivel de quejas, la percepcion de aprendizaje y la pecepción de incrementos salariales sean 0, la avaluacion general del ambiente esperada sería 10.52 puntos

\(\beta_1\): Por cada punto adicional en la gestión de quejas, la evaluación general aumenta en 0.65 puntos

\(\beta_2\): Por cada punto adicional en la percepción de oportunidad de aprendizaje, la evaluación general aumenta en 0.22 puntos

\(\beta_3\): Por cada punto adicional en la percepción de incrementos salariales, la evaluación general disminuye en 0.02 puntos

\(R^2:\) el modelo explica el 70.83% de la variacion de la evaluación del proyecto

Significancia 4

\(\beta_0\): (Intercept): No se rechaza la hipótesis nula(H0:B0=0), beta 0 no es significativamente distinto a 0. Aunque no resulta estadísticamente significativo, se mantiene en el modelo como una constante de ajuste necesaria para no sesgar los demás resultados.

\(\beta_1\): (complaints): se rechaza la hipotesis nula (H0:B 1 = 0), beta 1 es significativamente distinto a 0, por lo que es valioso para el modelo y se debe mantener en el modelo. Hay una relación significativa entre la gestión de quejas y la evaluación general del ambiente laboral.

\(\beta_2\): (learning):no se rechaza la hipotesis nula (H0:B 2 = 0), beta 2 no es significativamente distinto a 0, por lo que no es valioso para el modelo y se puede eliminar del modelo. No hay evidencia suficiente de una relación significativa entre la percepción de aprendizaje y la evaluación general del ambiente laboral.

\(\beta_3\): (raises):no se rechaza la hipotesis nula (H0:B 3 = 0), beta 3 no es significativamente distinto a 0, por lo que no es valioso para el modelo y puede suprimir del modelo. No hay evidencia suficiente de una relación significativa entre la percepción de incrementos salariales y la evaluación general del ambiente laboral.

P valor del modelo: se rechaza la idea de que las variables (gestión de quejas, percepción de aprendizaje e incrementos salariales) no influyen en la evaluación general del ambiente laboral, ya que existe la evidencia estadística suficiente para decir lo contrario. El p-valor global del modelo (3.957e-07) es menor al nivel de significancia (0.05), lo que indica que el modelo en su conjunto es significativamente válido.

Supuestos 4

Multicolinealidad

check_collinearity(regresion4)
## # Check for Multicollinearity
## 
## Low Correlation
## 
##        Term  VIF   VIF 95% CI adj. VIF Tolerance Tolerance 95% CI
##  complaints 1.98 [1.42, 3.32]     1.41      0.50     [0.30, 0.71]
##    learning 1.86 [1.35, 3.11]     1.36      0.54     [0.32, 0.74]
##      raises 2.16 [1.52, 3.63]     1.47      0.46     [0.28, 0.66]
  • complaints: no presenta multicolinealidad problemática con las demás variables del modelo.
  • learning: no presenta multicolinealidad problemática con las demás variables del modelo.
  • raises: no presenta multicolinealidad problemática con las demás variables del modelo.

Exogeneidad y forma funcional correcta

check_model(regresion4,check="linearity")

resettest(regresion4,power = 2:3, type="fitted")
## 
##  RESET test
## 
## data:  regresion4
## RESET = 0.10909, df1 = 2, df2 = 24, p-value = 0.8971

Interpretación check_model (linearity): . la línea de tendencia es aproximadamente plana y los puntos no muestran patrones sistemáticos, se cumple el supuesto de linealidad.

Interpretación RESET test: La hipótesis nula del test RESET es que la forma funcional del modelo está correctamente especificada. El p-valor del test es mayor al nivel de significancia (0.05), no se rechaza H0 y se concluye que no hay evidencia de mala especificación funcional en el modelo que relaciona gestión de quejas, percepción de aprendizaje e incrementos salariales con la evaluación general del ambiente laboral.

Heteroscedasticidad

bptest(regresion4)
## 
##  studentized Breusch-Pagan test
## 
## data:  regresion4
## BP = 11.368, df = 3, p-value = 0.009895

Interpretación Bptest: Con base en la prueba de Breusch–Pagan studentizada, se obtiene un p-valor de 0.009895, el cual es menor al nivel de significancia del 5%. Por lo tanto, se rechaza la hipótesis nula de homocedasticidad, lo que indica la presencia de heterocedasticidad en el modelo regresion4. En consecuencia, la varianza de los errores no es constante, por lo que las inferencias estadísticas basadas en errores estándar tradicionales pueden no ser confiables.

Gráfica 4

g4a <- ggplot(attitude, aes(x = complaints, y = rating)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Quejas vs Evaluación",
       x = "Gestión de quejas", y = "Evaluación general")

g4b <- ggplot(attitude, aes(x = learning, y = rating)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Aprendizaje vs Evaluación",
       x = "Oportunidad de aprendizaje", y = "Evaluación general")

g4c <- ggplot(attitude, aes(x = raises, y = rating)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Incrementos vs Evaluación",
       x = "Incrementos salariales", y = "Evaluación general")

g4a + g4b + g4c

5-State.x77

df_estados <- as.data.frame(state.x77)
kable(head(df_estados))
Population Income Illiteracy Life Exp Murder HS Grad Frost Area
Alabama 3615 3624 2.1 69.05 15.1 41.3 20 50708
Alaska 365 6315 1.5 69.31 11.3 66.7 152 566432
Arizona 2212 4530 1.8 70.55 7.8 58.1 15 113417
Arkansas 2110 3378 1.9 70.66 10.1 39.9 65 51945
California 21198 5114 1.1 71.71 10.3 62.6 20 156361
Colorado 2541 4884 0.7 72.06 6.8 63.9 166 103766
regresion5 <- lm(`Life Exp` ~ Income + Illiteracy + Murder + `HS Grad`, data = df_estados)
summary(regresion5)
## 
## Call:
## lm(formula = `Life Exp` ~ Income + Illiteracy + Murder + `HS Grad`, 
##     data = df_estados)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1.56498 -0.53611  0.05303  0.58972  1.73972 
## 
## Coefficients:
##               Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 69.4833066  1.3253230  52.427  < 2e-16 ***
## Income       0.0001249  0.0002422   0.516   0.6084    
## Illiteracy   0.2760771  0.3105081   0.889   0.3787    
## Murder      -0.2619402  0.0444659  -5.891 4.53e-07 ***
## `HS Grad`    0.0461443  0.0218485   2.112   0.0403 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.8049 on 45 degrees of freedom
## Multiple R-squared:  0.6698, Adjusted R-squared:  0.6405 
## F-statistic: 22.82 on 4 and 45 DF,  p-value: 2.39e-10

Ingreso: Se espera que mayores ingresos permitan mejor acceso a salud y alimentación(Signo positivo)

Analfabetismo: Se esperaría que a mayor analfabetismo la esperanza de vida baje (signo negativo). Sin embargo, el modelo arrojó un signo positivo, lo cual puede explicarse por multicolinealidad con otras variables como Murder o Income que absorben parte del efecto. Dado que la variable no es significativa (p = 0.378), su signo no es confiable..

Homicidios: Se espera que una mayor tasa de criminalidad reduzca la esperanza de vida.(Signo negativo)

Graduación Secundaria: Se espera que mayor educación se traduzca en mejores hábitos y calidad de vida.(Signo positivo)

Al trabajar con datos agregados por estado, existe el riesgo de la falacia ecológica: las relaciones que se observan a nivel estatal no necesariamente reflejan lo que ocurre a nivel individual. Por ejemplo, un estado puede tener alta tasa de analfabetismo y alta esperanza de vida simplemente porque tiene una estructura demográfica particular, no porque el analfabetismo cause longevidad. Además, variables como acceso a servicios de salud, urbanización o desigualdad de ingresos están ausentes del modelo y probablemente explican parte de la variación en esperanza de vida. El signo positivo e inesperado de Illiteracy es una señal clara de que puede haber una relación espuria o que otra variable omitida está distorsionando ese coeficiente.

Interpretaciones 5

\(\beta_0\): En el caso hipotetico en que el ingreso, el analfabetismo, la tasa de homicidios y la graduacion secundaria sean 0, la Esperanza de vida esperada sería 69.48 años

\(\beta_1\): Por cada dólar adicional de ingreso per cápita, la esperanza de vida aumenta en 0.0001 años

\(\beta_2\): Por cada punto porcentual adicional de analfabetismo, la esperanza de vida aumenta en 0.27 años

\(\beta_3\): Por cada homicidio adicional por cada 100,000 habitantes, la esperanza de vida disminuye en 0.26 años

\(\beta_4\): Por cada punto porcentual adicional de graduados de secundaria, la esperanza de vida aumenta en 0.04 años

\(R^2:\)el modelo explica el 66.98% de la variacion en la esperanza de vida

Significancia 5

\(\beta_0\): (Intercept): se rechaza la hipotesis nula (H0:B 0 = 0), beta 0 es significativamente distinto a 0, por lo que es valioso para el modelo y se debe mantener en el modelo

\(\beta_1\): (Income):no se rechaza la hipotesis nula (H0:B 1 = 0), beta 1 no es significativamente distinto a 0, por lo que es no valioso para el modelo y puede eliminar del modelo. No hay evidencia suficiente de una relación significativa entre el ingreso per cápita y la esperanza de vida.

\(\beta_2\): (Illiteracy):no se rechaza la hipotesis nula (H0:B 2 = 0), beta 2 no es significativamente distinto a 0, por lo que no es valioso para el modelo y se dpuede suprimir del modelo. No hay evidencia suficiente de una relación significativa entre la tasa de analfabetismo y la esperanza de vida.

\(\beta_3\): (Murder): se rechaza la hipotesis nula (H0:B 3 = 0), beta 3 es significativamente distinto a 0, por lo que es valioso para el modelo y se debe mantener en el modelo. Hay una relación significativa entre la tasa de homicidios y la esperanza de vida.

\(\beta_4\): (HS.grade): se rechaza la hipotesis nula (H0:B 4 = 0), beta 4 es significativamente distinto a 0, por lo que es valioso para el modelo y se debe mantener en el modelo. Hay una relación significativa entre el porcentaje de graduados de secundaria y la esperanza de vida.

P valor del modelo: se rechaza la idea de que las variables (ingreso per cápita, tasa de analfabetismo, tasa de homicidios y graduación de secundaria) no influyen en la esperanza de vida, ya que existe la evidencia estadística suficiente para decir lo contrario. El p-valor global del modelo (2.39e-1) es menor al nivel de significancia (0.05), lo que indica que el modelo en su conjunto es significativamente válido.

Supuestos 5

Multicolinealidad

check_collinearity(regresion5)
## # Check for Multicollinearity
## 
## Low Correlation
## 
##        Term  VIF   VIF 95% CI adj. VIF Tolerance Tolerance 95% CI
##      Income 1.67 [1.30, 2.54]     1.29      0.60     [0.39, 0.77]
##  Illiteracy 2.71 [1.93, 4.15]     1.65      0.37     [0.24, 0.52]
##      Murder 2.04 [1.51, 3.09]     1.43      0.49     [0.32, 0.66]
##     HS Grad 2.36 [1.71, 3.59]     1.53      0.42     [0.28, 0.59]
  • Income: no presenta multicolinealidad problemática con las demás variables del modelo.
  • Illiteracy: no presenta multicolinealidad problemática con las demás variables del modelo.
  • Murder: no presenta multicolinealidad problemática con las demás variables del modelo.
  • HS Grad: no presenta multicolinealidad problemática con las demás variables del modelo.

Exogeneidad y forma funcional correcta

check_model(regresion5,check="linearity")

resettest(regresion5,power = 2:3, type="fitted")
## 
##  RESET test
## 
## data:  regresion5
## RESET = 1.5152, df1 = 2, df2 = 43, p-value = 0.2313

Interpretación check_model (linearity): . Si la línea de tendencia es aproximadamente plana y los puntos no muestran patrones sistemáticos, se cumple el supuesto de linealidad.

Interpretación RESET test: La hipótesis nula del test RESET es que la forma funcional del modelo está correctamente especificada. El p-valor del test es mayor al nivel de significancia (0.05), no se rechaza H0 y se concluye que no hay evidencia de mala especificación funcional en el modelo que relaciona ingreso per cápita, tasa de analfabetismo, tasa de homicidios y graduación de secundaria con la esperanza de vida.

Heteroscedasticidad

bptest(regresion5)
## 
##  studentized Breusch-Pagan test
## 
## data:  regresion5
## BP = 9.1153, df = 4, p-value = 0.05828

Interpretación Bptest: Con base en la prueba de Breusch–Pagan studentizada, se obtiene un p-valor de 0.05828, el cual es mayor al nivel de significancia del 5%. Por lo tanto, no se rechaza la hipótesis nula de homocedasticidad, lo que indica que no existe evidencia estadísticamente significativa de heterocedasticidad en el modelo regresion5 al 5%.

Gráfica 5

g5a <- ggplot(df_estados, aes(x = Income, y = `Life Exp`)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Ingreso vs Esperanza de vida",
       x = "Ingreso per cápita (USD)", y = "Esperanza de vida (años)")

g5b <- ggplot(df_estados, aes(x = Illiteracy, y = `Life Exp`)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Analfabetismo vs Esperanza de vida",
       x = "Analfabetismo (%)", y = "Esperanza de vida (años)")

g5c <- ggplot(df_estados, aes(x = Murder, y = `Life Exp`)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Homicidios vs Esperanza de vida",
       x = "Homicidios por 100,000 hab.", y = "Esperanza de vida (años)")

g5d <- ggplot(df_estados, aes(x = `HS Grad`, y = `Life Exp`)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Graduación secundaria vs Esperanza de vida",
       x = "Graduados de secundaria (%)", y = "Esperanza de vida (años)")

(g5a + g5b) / (g5c + g5d)

6-Trees

data("trees")
kable(head(trees))
Girth Height Volume
8.3 70 10.3
8.6 65 10.3
8.8 63 10.2
10.5 72 16.4
10.7 81 18.8
10.8 83 19.7
regresion6<-lm(data = trees, Volume~Girth+Height)
summary(regresion6)
## 
## Call:
## lm(formula = Volume ~ Girth + Height, data = trees)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -6.4065 -2.6493 -0.2876  2.2003  8.4847 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) -57.9877     8.6382  -6.713 2.75e-07 ***
## Girth         4.7082     0.2643  17.816  < 2e-16 ***
## Height        0.3393     0.1302   2.607   0.0145 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3.882 on 28 degrees of freedom
## Multiple R-squared:  0.948,  Adjusted R-squared:  0.9442 
## F-statistic:   255 on 2 and 28 DF,  p-value: < 2.2e-16

Girth: Se espera que a mayor grosor del tronco, mayor sea el volumen de madera.

Height: Se espera que a mayor altura del árbol, mayor sea el volumen.

Desde el punto de vista físico, el volumen de un árbol se aproxima al de un cilindro, que depende del radio al cuadrado multiplicado por la altura. Esto sugiere que la relación entre diámetro y volumen no es estrictamente lineal sino que podría requerir una forma funcional con términos cuadráticos o una transformación logarítmica para ser más precisa.

Respecto a la multicolinealidad, es razonable esperar que árboles más altos tiendan a tener mayor diámetro, ya que ambas dimensiones reflejan el crecimiento general del árbol. Si existe una correlación alta entre Girth y Height, los errores estándar de los coeficientes se inflan y las estimaciones se vuelven inestables, aunque el R² del modelo (94.8%) sugiere que el ajuste global sigue siendo muy bueno a pesar de ese posible problema.

Interpretaciones 6

\(\beta_0\): En el caso hipotetico en que la circunferencia del tronco y la altura del arbol sean 0, el volumen esperado sería -57.98 unidades

\(\beta_1\): Por cada pulgada adicional de diámetro del tronco, el volumen de madera aumenta en 4.7 pies cúbicos

\(\beta_2\): Por cada pie adicional de altura, el volumen de madera aumenta en 0.33 pies cúbicos

\(R^2:\) el modelo explica el 94.8% de la variacion del volumen de la madera del arbol

Significancia 6

\(\beta_0\): (Intercept): se rechaza la hipotesis nula (H0:B 0 = 0), beta 0 es significativamente distinto a 0, por lo que es valioso para el modelo y se debe mantener en el modelo

\(\beta_1\): (Girth): se rechaza la hipotesis nula (H0:B 1 = 0), beta 1 es significativamente distinto a 0, por lo que es valioso para el modelo y se debe mantener en el modelo. Hay una relación significativa entre el diámetro del tronco y el volumen de madera.

\(\beta_2\): (Height): se rechaza la hipotesis nula (H0:B 2 = 0), beta 2 es significativamente distinto a 0, por lo que es valioso para el modelo y se debe mantener en el modelo. Hay una relación significativa entre la altura del árbol y el volumen de madera.

P valor del modelo: se rechaza la idea de que las variables (diámetro del tronco y altura del árbol) no influyen en el volumen de madera, ya que existe la evidencia estadística suficiente para decir lo contrario. El p-valor global del modelo (2.23-16) es menor al nivel de significancia (0.05), lo que indica que el modelo en su conjunto es significativamente válido.

Supuestos 6

Multicolinealidad

check_collinearity(regresion6)
## # Check for Multicollinearity
## 
## Low Correlation
## 
##    Term  VIF   VIF 95% CI adj. VIF Tolerance Tolerance 95% CI
##   Girth 1.37 [1.09, 2.47]     1.17      0.73     [0.41, 0.91]
##  Height 1.37 [1.09, 2.47]     1.17      0.73     [0.41, 0.91]
  • Girth: no presenta multicolinealidad problemática con las demás variables del modelo.
  • Height: no presenta multicolinealidad problemática con las demás variables del modelo.

Exogeneidad y forma funcional correcta

check_model(regresion6,check="linearity")

resettest(regresion6,power = 2:3, type="fitted")
## 
##  RESET test
## 
## data:  regresion6
## RESET = 17.885, df1 = 2, df2 = 26, p-value = 1.302e-05

Interpretación check_model (linearity): . La línea de tendencia es no es relativamente plana y muestra patrones sistemáticos,no se cumple el supuesto de linealidad. En este caso, podría indicar una forma funcional incorrecta.

Interpretación RESET test: La hipótesis nula del test RESET es que la forma funcional del modelo está correctamente especificada.El p-valor es menor a 0.05, se rechaza H0, lo que sugiere que la relación entre diámetro del tronco y altura del árbol y el volumen de madera podría requerir una forma funcional diferente (por ejemplo, términos cuadráticos o logarítmicos).

Heteroscedasticidad

bptest(regresion6)
## 
##  studentized Breusch-Pagan test
## 
## data:  regresion6
## BP = 2.4681, df = 2, p-value = 0.2911

Interpretación Bptest: Con base en la prueba de Breusch–Pagan studentizada, se obtiene un p-valor de 0.2911, el cual es mayor al nivel de significancia del 5%. Por lo tanto, no se rechaza la hipótesis nula de homocedasticidad, lo que indica que no existe evidencia estadísticamente significativa de heterocedasticidad en el modelo regresion6. En consecuencia, se asume que la varianza de los errores es constante y que las inferencias estadísticas son confiables.

Gráfica 6

g6a <- ggplot(trees, aes(x = Girth, y = Volume)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Diámetro vs Volumen",
       x = "Diámetro (pulgadas)", y = "Volumen (pies cúbicos)")

g6b <- ggplot(trees, aes(x = Height, y = Volume)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Altura vs Volumen",
       x = "Altura (pies)", y = "Volumen (pies cúbicos)")

g6a / g6b

7-Women

data("women")
kable(head(women))
height weight
58 115
59 117
60 120
61 123
62 126
63 129
regresion7<-lm(data = women, weight~height+I(height^2)) #la función I() (de Inhibit Interpretation) se usa para que el programa ignore el significado "especial" que ciertos símbolos tienen dentro de una fórmula y los trate como operaciones matemáticas comunes
summary(regresion7)
## 
## Call:
## lm(formula = weight ~ height + I(height^2), data = women)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.50941 -0.29611 -0.00941  0.28615  0.59706 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 261.87818   25.19677  10.393 2.36e-07 ***
## height       -7.34832    0.77769  -9.449 6.58e-07 ***
## I(height^2)   0.08306    0.00598  13.891 9.32e-09 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.3841 on 12 degrees of freedom
## Multiple R-squared:  0.9995, Adjusted R-squared:  0.9994 
## F-statistic: 1.139e+04 on 2 and 12 DF,  p-value: < 2.2e-16

Este ejercicio se considera una regresión lineal porque la “linealidad” en estadística se refiere a la forma en que los parámetros (B0, B1, B2) entran en la ecuación, no a la forma de la gráfica resultante.

Altura: Lógicamente, se espera que a mayor estatura, el peso aumente (relación positiva).

Altura al cuadrado: El cuerpo humano no crece de forma plana; a medida que ganamos altura, el volumen (y el peso) suele aumentar de forma acelerada, por lo que un término cuadrático positivo tiene sentido físico

Una regresión simple de weight sobre height asumiría que por cada pulgada adicional de altura el peso aumenta siempre en la misma cantidad, lo cual no es realista biológicamente. El modelo cuadrático captura mejor la realidad porque el cuerpo humano no crece de forma uniforme: a medida que una persona es más alta, el peso tiende a aumentar de forma acelerada porque el volumen corporal crece en múltiples dimensiones simultáneamente. El R² de 99.95% confirma que el término cuadrático mejora drásticamente la especificación respecto a lo que daría un modelo lineal simple, haciendo la relación mucho más realista y precisa.

Interpretaciones 7

\(\beta_0\): En el caso hipotetico en que la altura y la altura al cuadrado sean 0, el peso esperado seria de 261 libras

\(\beta_1\): Por cada pulgada adicional de altura, el peso disminuye en 7 libras

\(\beta_2\): Por cada pulgada adicional de altura al cuadrado, el peso aumenta en 0.08 libras

beta1 y \(\beta_2\): Al tratarse de un modelo cuadrático, estos coeficientes no se interpretan de forma independiente. El efecto marginal de la altura sobre el peso es β1 + 2·β2·height = -7.34 + 2(0.083)·height, lo que indica que a medida que aumenta la altura, el peso aumenta de forma acelerada y curvilínea.

\(R^2:\)el modelo explica el 99.95% de la variacion del peso de las mujeres

Significancia 7

\(\beta_0\): (Intercept): se rechaza la hipotesis nula (H0:B 0 = 0), beta 0 es significativamente distinto a 0, por lo que es valioso para el modelo y se debe mantener en el modelo

\(\beta_1\): (height): se rechaza la hipotesis nula (H0:B 1 = 0), beta 1 es significativamente distinto a 0, por lo que es valioso para el modelo y se debe mantener en el modelo. Hay una relación significativa entre la altura y el peso de las mujeres.

\(\beta_2\): (height^2): se rechaza la hipotesis nula (H0:B 2 = 0), beta 2 es significativamente distinto a 0, por lo que es valioso para el modelo y se debe mantener en el modelo. Hay una relación significativa entre la altura al cuadrado y el peso, lo que confirma la forma curvilínea de la relación.

P valor del modelo: se rechaza la idea de que las variables (altura y altura al cuadrado) no influyen en el peso de las mujeres, ya que existe la evidencia estadística suficiente para decir lo contrario. El p-valor global del modelo (2.2e-16) esmenor al nivel de significancia (0.05), lo que indica que el modelo en su conjunto es significativamente válido.

Supuestos 7

Multicolinealidad

check_collinearity(regresion7)
## # Check for Multicollinearity
## 
## High Correlation
## 
##         Term     VIF        VIF 95% CI adj. VIF Tolerance Tolerance 95% CI
##       height 1148.06 [582.49, 2263.70]    33.88  8.71e-04     [0.00, 0.00]
##  I(height^2) 1148.06 [582.49, 2263.70]    33.88  8.71e-04     [0.00, 0.00]
  • height: presenta multicolinealidad con height^2, lo cual es estructural en modelos polinómicos y no representa un problema real.
  • height^2: presenta multicolinealidad con height, lo cual es estructural en modelos polinómicos y no representa un problema real.

Exogeneidad y forma funcional correcta

check_model(regresion7,check="linearity")

resettest(regresion7,power = 2:3, type="fitted")
## 
##  RESET test
## 
## data:  regresion7
## RESET = 11.882, df1 = 2, df2 = 10, p-value = 0.002279

Interpretación check_model (linearity):. La línea de tendencia es no es relativamente plana y muestra patrones sistemáticos,no se cumple el supuesto de linealidad. En este caso, podría indicar una forma funcional incorrecta.

Interpretación RESET test: La hipótesis nula del test RESET es que la forma funcional del modelo está correctamente especificada. El p-valor es menor a 0.05, se rechaza H0, lo que sugiere que la relación entre altura y altura al cuadrado y el peso de las mujeres podría requerir una forma funcional diferente (por ejemplo, términos cuadráticos o logarítmicos).

Heteroscedasticidad

bptest(regresion7)
## 
##  studentized Breusch-Pagan test
## 
## data:  regresion7
## BP = 3.0122, df = 2, p-value = 0.2218

Interpretación Bptest: Con base en la prueba de Breusch–Pagan studentizada, se obtiene un p-valor de 0.2218, el cual es mayor al nivel de significancia del 5%. Por lo tanto, no se rechaza la hipótesis nula de homocedasticidad, lo que indica que no existe evidencia estadísticamente significativa de heterocedasticidad en el modelo regresion7. En consecuencia, se asume que la varianza de los errores es constante y que las inferencias estadísticas son confiables.

Gráfica 7

ggplot(women, aes(x = height, y = weight)) +
  geom_point() +
  geom_smooth(method = "lm", formula = y ~ x + I(x^2), se = FALSE) +
  labs(title = "Altura vs Peso (modelo cuadrático)",
       x = "Altura (pulgadas)", y = "Peso (libras)")

8-CO2

data("CO2")
kable(head(CO2))
Plant Type Treatment conc uptake
Qn1 Quebec nonchilled 95 16.0
Qn1 Quebec nonchilled 175 30.4
Qn1 Quebec nonchilled 250 34.8
Qn1 Quebec nonchilled 350 37.2
Qn1 Quebec nonchilled 500 35.3
Qn1 Quebec nonchilled 675 39.2
regresion8<-lm(data = CO2, uptake~conc+Type+Treatment)
summary(regresion8)
## 
## Call:
## lm(formula = uptake ~ conc + Type + Treatment, data = CO2)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -17.344  -2.826   1.070   4.137  11.267 
## 
## Coefficients:
##                    Estimate Std. Error t value Pr(>|t|)    
## (Intercept)       29.259814   1.538928  19.013  < 2e-16 ***
## conc               0.017731   0.002297   7.719 2.87e-11 ***
## TypeMississippi  -12.659524   1.351439  -9.367 1.67e-14 ***
## Treatmentchilled  -6.859524   1.351439  -5.076 2.46e-06 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 6.193 on 80 degrees of freedom
## Multiple R-squared:  0.6839, Adjusted R-squared:  0.6721 
## F-statistic:  57.7 on 3 and 80 DF,  p-value: < 2.2e-16

Concentración (conc): Se espera que a mayor disponibilidad de CO2, la planta aumente su tasa de fotosíntesis y, por ende, su absorción.

Tipo de planta (Mississippi vs. Quebec): Se podría esperar una diferencia según la adaptación al clima; en este caso, se hipotetiza que las plantas de regiones más frías (Quebec) podrían ser más eficientes.

Tratamiento (Chilled): Se espera que el estrés por frío reduzca la capacidad metabólica de la planta para absorber CO2.

Incluir interacciones sería pertinente porque es posible que el efecto de la concentración de CO2 sobre la absorción no sea igual para todos los tipos de planta ni para todos los tratamientos. Por ejemplo, una planta de Quebec no enfriada podría responder de forma más pronunciada al aumento de concentración que una planta de Mississippi enfriada. El modelo actual asume que la pendiente de conc es la misma para todos los grupos, lo cual es un supuesto fuerte. Agregar términos como concType o concTreatment permitiría que cada grupo tenga su propia pendiente y probablemente mejoraría el ajuste del modelo.

Interpretaciones 8

\(\beta_0\): En el caso hipotetico en que la concentracion de CO2 sea 0, el tipo sea Quebec y el tratamiento sea nonchilled, la absorcion de CO2 esperada sería 29.25 puntos

\(\beta_1\): Por cada mL/L adicional de concentración de CO2 ambiental, la tasa de absorción aumenta en 0.01 μmol/m² por segundo

\(\beta_2\): Si la planta es de tipo Mississippi (en comparación con Quebec), la tasa de absorción disminuye en 12.65 μmol/m² por segundo

\(\beta_3\): Si se aplica el tratamiento de enfriamiento (chilled), la tasa de absorción disminuye en 6.85 μmol/m² por segundo, en comparación con las plantas no enfriadas

\(R^2:\)el modelo explica el 68.39% de la variacion de absorción de CO2

Significancia 8

\(\beta_0\): (Intercept): se rechaza la hipotesis nula (H0:B 0 = 0), beta 0 es significativamente distinto a 0, por lo que es valioso para el modelo y se debe mantener en el modelo

\(\beta_1\): (conc): se rechaza la hipotesis nula (H0:B 1 = 0), beta 1 es significativamente distinto a 0, por lo que es valioso para el modelo y se debe mantener en el modelo. Hay una relación significativa entre la concentración de CO2 ambiental y la tasa de absorción de CO2.

\(\beta_2\): (Type): se rechaza la hipotesis nula (H0:B 2 = 0), beta 2 es significativamente distinto a 0, por lo que es valioso para el modelo y se debe mantener en el modelo. Hay una relación significativa entre el tipo de planta y la tasa de absorción de CO2.

\(\beta_3\): (Trearment): se rechaza la hipotesis nula (H0:B 3 = 0), beta 3 es significativamente distinto a 0, por lo que es valioso para el modelo y se debe mantener en el modelo. Hay una relación significativa entre el tratamiento de enfriamiento aplicado y la tasa de absorción de CO2.

P valor del modelo: se rechaza la idea de que las variables (concentración de CO2, tipo de planta y tratamiento de enfriamiento) no influyen en la tasa de absorción de CO2, ya que existe la evidencia estadística suficiente para decir lo contrario. El p-valor global del modelo (2.2e-16) esmenor al nivel de significancia (0.05), lo que indica que el modelo en su conjunto es significativamente válido.

Supuestos 8

Multicolinealidad

check_collinearity(regresion8)
## # Check for Multicollinearity
## 
## Low Correlation
## 
##       Term VIF      VIF  CI adj. VIF Tolerance
##       conc   1 [1.00, 1.00]        1         1
##       Type   1 [1.00, 1.00]        1         1
##  Treatment   1 [1.00, 1.00]        1         1
  • conc: no presenta multicolinealidad problemática con las demás variables del modelo.
  • Type: no presenta multicolinealidad problemática con las demás variables del modelo.
  • Treatment: no presenta multicolinealidad problemática con las demás variables del modelo.

Exogeneidad y forma funcional correcta

check_model(regresion8,check="linearity")

resettest(regresion8,power = 2:3, type="fitted")
## 
##  RESET test
## 
## data:  regresion8
## RESET = 0.6488, df1 = 2, df2 = 78, p-value = 0.5255

Interpretación check_model (linearity): . La línea de tendencia es aproximadamente plana y los puntos no muestran patrones sistemáticos, se cumple el supuesto de linealidad.

Interpretación RESET test: La hipótesis nula del test RESET es que la forma funcional del modelo está correctamente especificada. El p-valor del test es mayor al nivel de significancia (0.05), no se rechaza H0 y se concluye que no hay evidencia de mala especificación funcional en el modelo que relaciona concentración de CO2 ambiental, tipo de planta y tratamiento de enfriamiento con la tasa de absorción de CO2.

Heteroscedasticidad

bptest(regresion8)
## 
##  studentized Breusch-Pagan test
## 
## data:  regresion8
## BP = 7.607, df = 3, p-value = 0.05487

Interpretación Bptest: Con base en la prueba de Breusch–Pagan studentizada, se obtiene un p-valor de 0.05487, el cual es ligeramente mayor al nivel de significancia del 5%. Por lo tanto, no se rechaza la hipótesis nula de homocedasticidad al 5%, lo que indica que no existe evidencia estadísticamente significativa de heterocedasticidad en el modelo regresion8.

Gráfica 8

g8a <- ggplot(CO2, aes(x = conc, y = uptake)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Concentración vs Absorción",
       x = "Concentración CO2 (mL/L)", y = "Absorción (μmol/m² seg)")

g8b <- ggplot(CO2, aes(x = Type, y = uptake)) +
  geom_boxplot() +
  labs(title = "Tipo de planta vs Absorción",
       x = "Tipo", y = "Absorción (μmol/m² seg)")

g8c <- ggplot(CO2, aes(x = Treatment, y = uptake)) +
  geom_boxplot() +
  labs(title = "Tratamiento vs Absorción",
       x = "Tratamiento", y = "Absorción (μmol/m² seg)")

g8a + g8b / g8c

9-Pressure

data("pressure")
kable(head(pressure))
temperature pressure
0 0.0002
20 0.0012
40 0.0060
60 0.0300
80 0.0900
100 0.2700
regresion9<-lm(data = pressure, pressure~temperature+I(temperature^2))
summary(regresion9)
## 
## Call:
## lm(formula = pressure ~ temperature + I(temperature^2), data = pressure)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -95.142 -54.391  -1.353  48.238 170.374 
## 
## Coefficients:
##                   Estimate Std. Error t value Pr(>|t|)    
## (Intercept)      91.154379  46.262513   1.970 0.066354 .  
## temperature      -2.706167   0.595775  -4.542 0.000333 ***
## I(temperature^2)  0.011718   0.001597   7.336 1.67e-06 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 74.42 on 16 degrees of freedom
## Multiple R-squared:  0.9024, Adjusted R-squared:  0.8902 
## F-statistic:    74 on 2 and 16 DF,  p-value: 8.209e-09

Temperatura: Basado en las leyes de los gases (como la de Gay-Lussac), se espera que a mayor temperatura, la presión aumente

Temperatura al cuadrado: Se espera que la presión no aumente de forma lineal, sino de forma exponencial o acelerada a medida que el líquido se vaporiza, por lo que un término cuadrático positivo es lógico

Este ejercicio se considera una regresión lineal porque la “linealidad” en estadística se refiere a la forma en que los parámetros (B0, B1, B2) entran en la ecuación, no a la forma de la gráfica resultante.

Una regresión simple de pressure sobre temperature asumiría un aumento constante y proporcional de la presión con la temperatura, lo cual no refleja el comportamiento real de los gases y vapores. En la práctica, conforme un líquido se acerca a su punto de ebullición la presión de vapor se dispara de forma exponencial, no lineal. El modelo cuadrático captura mejor esa aceleración, como lo refleja su R² de 90.24%. Sin embargo, dado que el comportamiento real es casi exponencial, una transformación logarítmica de la presión podría ser una especificación aún más apropiada que el término cuadrático

Interpretaciones 9

\(\beta_0\):Si la temperatura fuera 0, la presión inicial esperada sería de 91.15 unidades.

\(\beta_1\):Por cada unidad adicional de temperatura, la presión disminuye en promedio 2.70 unidades

\(\beta_2\):Por cada unidad adicional de temperatura al cuadrado, la presión aumenta en 0.011 unidades.

beta1 y \(\beta_2\): Al tratarse de un modelo cuadrático, estos coeficientes no se interpretan de forma independiente. El efecto marginal de la temperatura sobre la presión es β1 + 2·β2·temperature = -2.70 + 2(0.011)·temperature, lo que indica que a partir de cierto nivel de temperatura, la presión aumenta de forma acelerada, consistente con las leyes de los gases.

\(R^2:\)El modelo explica el 90.24% de la variabilidad de la presión

Significancia 9

\(\beta_0\): (Intercept):No se rechaza la hipótesis nula (H0:B0 = 0), beta 0 no es significativamente distinto a 0. Sin embargo, se mantiene en el modelo porque eliminarlo forzaría a la curva a pasar por el origen, lo cual sesgaría los demás coeficientes y distorsionaría el ajuste del modelo.

\(\beta_1\): (Temperature): se rechaza la hipotesis nula (H0:B 1 = 0), beta 1 es significativamente distinto a 0, por lo que es valioso para el modelo y se debe mantener en el modelo. Hay una relación significativa entre la temperatura y la presión de vapor.

\(\beta_2\): (Temperature^2): se rechaza la hipotesis nula (H0:B 2 = 0), beta 2 es significativamente distinto a 0, por lo que es valioso para el modelo y se debe mantener en el modelo. Hay una relación significativa entre la temperatura al cuadrado y la presión, lo que confirma el comportamiento acelerado y no lineal de la relación.

P valor del modelo: se rechaza la idea de que las variables (temperatura y temperatura al cuadrado) no influyen en la presión de vapor, ya que existe la evidencia estadística suficiente para decir lo contrario. El p-valor global del modelo (8.209e-09) esmenor al nivel de significancia (0.05), lo que indica que el modelo en su conjunto es significativamente válido.

Supuestos 9

Multicolinealidad

check_collinearity(regresion9)
## # Check for Multicollinearity
## 
## High Correlation
## 
##              Term   VIF    VIF 95% CI adj. VIF Tolerance Tolerance 95% CI
##       temperature 14.61 [7.86, 28.01]     3.82      0.07     [0.04, 0.13]
##  I(temperature^2) 14.61 [7.86, 28.01]     3.82      0.07     [0.04, 0.13]
  • temperature: presenta multicolinealidad con temperature^2, lo cual es estructural en modelos polinómicos y no representa un problema real.
  • temperature^2: presenta multicolinealidad con temperature, lo cual es estructural en modelos polinómicos y no representa un problema real.

Exogeneidad y forma funcional correcta

check_model(regresion9,check="linearity")

resettest(regresion9,power = 2:3, type="fitted")
## 
##  RESET test
## 
## data:  regresion9
## RESET = 2409.2, df1 = 2, df2 = 14, p-value < 2.2e-16

Interpretación check_model (linearity): . Si la línea de tendencia es aproximadamente plana y los puntos no muestran patrones sistemáticos, se cumple el supuesto de linealidad. En caso contrario, podría indicar una forma funcional incorrecta.

Interpretación RESET test: La hipótesis nula del test RESET es que la forma funcional del modelo está correctamente especificada. Si el p-valor del test es mayor al nivel de significancia (0.05), no se rechaza H0 y se concluye que no hay evidencia de mala especificación funcional en el modelo que relaciona temperatura y temperatura al cuadrado con la presión de vapor. Si el p-valor es menor a 0.05, se rechaza H0, lo que sugiere que la relación entre temperatura y temperatura al cuadrado y la presión de vapor podría requerir una forma funcional diferente (por ejemplo, términos cuadráticos o logarítmicos).

Heteroscedasticidad

bptest(regresion9)
## 
##  studentized Breusch-Pagan test
## 
## data:  regresion9
## BP = 7.4533, df = 2, p-value = 0.02407

Interpretación Bptest: Con base en la prueba de Breusch–Pagan studentizada, se obtiene un p-valor de 0.02407, el cual es menor al nivel de significancia del 5%. Por lo tanto, se rechaza la hipótesis nula de homocedasticidad, lo que indica la presencia de heterocedasticidad en el modelo regresion9. En consecuencia, la varianza de los errores no es constante, por lo que las inferencias estadísticas basadas en errores estándar convencionales pueden no ser confiables.

Gráfica 9

ggplot(pressure, aes(x = temperature, y = pressure)) +
  geom_point() +
  geom_smooth(method = "lm", formula = y ~ x + I(x^2), se = FALSE) +
  labs(title = "Temperatura vs Presión (modelo cuadrático)",
       x = "Temperatura (°C)", y = "Presión (mm)")

10-Prestige

data("Prestige")
kable(head(Prestige))
education income women prestige census type
gov.administrators 13.11 12351 11.16 68.8 1113 prof
general.managers 12.26 25879 4.02 69.1 1130 prof
accountants 12.77 9271 15.70 63.4 1171 prof
purchasing.officers 11.42 8865 9.11 56.8 1175 prof
chemists 14.62 8403 11.68 73.5 2111 prof
physicists 15.64 11030 5.13 77.6 2113 prof
regresion10<-lm(data = Prestige, prestige~income+education+women)
summary(regresion10)
## 
## Call:
## lm(formula = prestige ~ income + education + women, data = Prestige)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -19.8246  -5.3332  -0.1364   5.1587  17.5045 
## 
## Coefficients:
##               Estimate Std. Error t value Pr(>|t|)    
## (Intercept) -6.7943342  3.2390886  -2.098   0.0385 *  
## income       0.0013136  0.0002778   4.729 7.58e-06 ***
## education    4.1866373  0.3887013  10.771  < 2e-16 ***
## women       -0.0089052  0.0304071  -0.293   0.7702    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 7.846 on 98 degrees of freedom
## Multiple R-squared:  0.7982, Adjusted R-squared:  0.792 
## F-statistic: 129.2 on 3 and 98 DF,  p-value: < 2.2e-16

Ingreso y Educación: Se espera que a mayor nivel socioeconómico, mayor sea el prestigio.

Mujeres: Históricamente, en algunos contextos de sociología del trabajo, las ocupaciones feminizadas han tenido menor prestigio percibido por lo q se podria decir que se espera negativo, aunque no es del todo claro

Es muy probable que exista multicolinealidad entre income y education porque en la práctica las ocupaciones que requieren más años de educación tienden a pagar más. Si ambas variables están altamente correlacionadas, el modelo tiene dificultades para separar el efecto propio de cada una sobre el prestigio, lo que puede inflar los errores estándar y hacer que alguna parezca menos significativa de lo que realmente es

Respecto a type, incluirla como variable categórica en una especificación alternativa sería muy pertinente, ya que la distinción entre ocupaciones de cuello azul, cuello blanco y profesionales probablemente captura diferencias estructurales de prestigio que no quedan completamente explicadas por ingreso y educación por separado.

Interpretaciones 10

\(\beta_0\): Si el ingreso, la educación y el porcentaje de mujeres fueran cero, el prestigio inicial esperado sería de -6.79 unidades

\(\beta_1\): Por cada dólar adicional de ingreso promedio, el puntaje de prestigio aumenta en 0.0013 puntos

\(\beta_2\): Por cada año adicional de educación promedio, el puntaje de prestigio aumenta en 4.18 puntos

\(\beta_3\): Por cada punto porcentual adicional de mujeres en la ocupación, el puntaje de prestigio disminuye en 0.0089 puntos

\(R^2:\)El modelo explica el 79.82% de la variabilidad del prestigio de las ocupaciones.

Significancia 10

\(\beta_0\): (Intercept): se rechaza la hipotesis nula (H0:B 0 = 0), beta 0 es significativamente distinto a 0, por lo que es valioso para el modelo y se debe mantener en el modelo

\(\beta_1\): (income): se rechaza la hipotesis nula (H0:B 1 = 0), beta 1 es significativamente distinto a 0, por lo que es valioso para el modelo y se debe mantener en el modelo. Hay una relación significativa entre el ingreso promedio de la ocupación y el puntaje de prestigio.

\(\beta_2\): (education): se rechaza la hipotesis nula (H0:B 2 = 0), beta 2 es significativamente distinto a 0, por lo que es valioso para el modelo y se debe mantener en el modelo. Hay una relación significativa entre los años de educación promedio y el puntaje de prestigio.

\(\beta_3\): (womwn):no se rechaza la hipotesis nula (H0:B 3 = 0), beta 3 no es significativamente distinto a 0, por lo que no es valioso para el modelo y se puede suprimir del modelo. No hay evidencia suficiente de una relación significativa entre el porcentaje de mujeres en la ocupación y el puntaje de prestigio.

P valor del modelo: se rechaza la idea de que las variables (ingreso promedio, años de educación promedio y porcentaje de mujeres en la ocupación) no influyen en el puntaje de prestigio de las ocupaciones, ya que existe la evidencia estadística suficiente para decir lo contrario. El p-valor global del modelo (2.2e-16) esmenor al nivel de significancia (0.05), lo que indica que el modelo en su conjunto es significativamente válido.

Supuestos 10

Multicolinealidad

check_collinearity(regresion10)
## # Check for Multicollinearity
## 
## Low Correlation
## 
##       Term  VIF   VIF 95% CI adj. VIF Tolerance Tolerance 95% CI
##     income 2.28 [1.77, 3.13]     1.51      0.44     [0.32, 0.56]
##  education 1.85 [1.47, 2.51]     1.36      0.54     [0.40, 0.68]
##      women 1.53 [1.26, 2.07]     1.24      0.66     [0.48, 0.79]
  • income: no presenta multicolinealidad problemática con las demás variables del modelo.
  • education: no presenta multicolinealidad problemática con las demás variables del modelo.
  • women: no presenta multicolinealidad problemática con las demás variables del modelo.

Exogeneidad y forma funcional correcta

check_model(regresion10,check="linearity")

resettest(regresion10,power = 2:3, type="fitted")
## 
##  RESET test
## 
## data:  regresion10
## RESET = 3.4511, df1 = 2, df2 = 96, p-value = 0.0357

Interpretación check_model (linearity): . Si la línea de tendencia es aproximadamente plana y los puntos no muestran patrones sistemáticos, se cumple el supuesto de linealidad. En caso contrario, podría indicar una forma funcional incorrecta.

Interpretación RESET test: La hipótesis nula del test RESET es que la forma funcional del modelo está correctamente especificada. Si el p-valor del test es mayor al nivel de significancia (0.05), no se rechaza H0 y se concluye que no hay evidencia de mala especificación funcional en el modelo que relaciona ingreso promedio, años de educación promedio y porcentaje de mujeres en la ocupación con el puntaje de prestigio de las ocupaciones. Si el p-valor es menor a 0.05, se rechaza H0, lo que sugiere que la relación entre ingreso promedio, años de educación promedio y porcentaje de mujeres en la ocupación y el puntaje de prestigio de las ocupaciones podría requerir una forma funcional diferente (por ejemplo, términos cuadráticos o logarítmicos).

Heteroscedasticidad

bptest(regresion10)
## 
##  studentized Breusch-Pagan test
## 
## data:  regresion10
## BP = 5.0641, df = 3, p-value = 0.1672

Interpretación Bptest: Con base en la prueba de Breusch–Pagan studentizada, se obtiene un p-valor de 0.1672, el cual es mayor al nivel de significancia del 5%. Por lo tanto, no se rechaza la hipótesis nula de homocedasticidad, lo que indica que no existe evidencia estadísticamente significativa de heterocedasticidad en el modelo regresion10. En consecuencia, se asume que la varianza de los errores es constante y que las inferencias estadísticas del modelo son confiables.

Gráfica 10

g10a <- ggplot(Prestige, aes(x = income, y = prestige)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Ingreso vs Prestigio",
       x = "Ingreso promedio (USD)", y = "Puntaje de prestigio")

g10b <- ggplot(Prestige, aes(x = education, y = prestige)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Educación vs Prestigio",
       x = "Años de educación promedio", y = "Puntaje de prestigio")

g10c <- ggplot(Prestige, aes(x = women, y = prestige)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Mujeres vs Prestigio",
       x = "Mujeres en la ocupación (%)", y = "Puntaje de prestigio")

g10a + g10b + g10c

11 - Oferta laboral de mujeres casadas

data("mroz")
kable(head(mroz))
inlf hours kidslt6 kidsge6 age educ wage repwage hushrs husage huseduc huswage faminc mtr motheduc fatheduc unem city exper nwifeinc lwage expersq
1 1610 1 0 32 12 3.3540 2.65 2708 34 12 4.0288 16310 0.7215 12 7 5.0 0 14 10.910060 1.2101537 196
1 1656 0 2 30 12 1.3889 2.65 2310 30 9 8.4416 21800 0.6615 7 7 11.0 1 5 19.499981 0.3285121 25
1 1980 1 3 35 12 4.5455 4.04 3072 40 12 3.5807 21040 0.6915 12 7 5.0 0 15 12.039910 1.5141377 225
1 456 0 3 34 12 1.0965 3.25 1920 53 10 3.5417 7300 0.7815 7 7 5.0 0 6 6.799996 0.0921233 36
1 1568 1 2 31 14 4.5918 3.60 2000 32 12 10.0000 27300 0.6215 12 14 9.5 1 7 20.100058 1.5242722 49
1 2032 0 0 54 12 4.7421 4.70 1040 57 11 6.7106 19495 0.6915 14 7 7.5 1 33 9.859054 1.5564801 1089
regresion11 <- lm(hours ~ educ + exper + kidslt6 + nwifeinc, data = mroz)
summary(regresion11)
## 
## Call:
## lm(formula = hours ~ educ + exper + kidslt6 + nwifeinc, data = mroz)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -2048.2  -535.7  -214.8   547.7  3902.9 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  -48.378    158.795  -0.305 0.760710    
## educ          48.424     13.189   3.671 0.000258 ***
## exper         37.632      3.683  10.217  < 2e-16 ***
## kidslt6     -273.788     55.804  -4.906 1.14e-06 ***
## nwifeinc      -7.005      2.598  -2.696 0.007173 ** 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 780 on 748 degrees of freedom
## Multiple R-squared:  0.2028, Adjusted R-squared:  0.1985 
## F-statistic: 47.57 on 4 and 748 DF,  p-value: < 2.2e-16

Educación (educ): Se espera que a mayor educación, mayor participación laboral y más horas trabajadas.(Signo positivo)

Experiencia (exper): Se espera que a mayor experiencia laboral, más horas trabajadas.(Signo positivo)

Hijos menores de 6 años (kidslt6): Se espera que tener hijos pequeños reduzca las horas trabajadas, dado el costo de cuidado infantil.(Signo negativo)

Ingreso del hogar sin la esposa (nwifeinc): Según la teoría de oferta laboral, a mayor ingreso del hogar, la esposa puede “permitirse” trabajar menos.(Signo negativo)

Reflexión: Es posible que existan variables omitidas como acceso a guarderías, estado de salud o preferencias individuales.

Interpretaciones 11

\(\beta_0\): En el caso hipotético en que la educación, la experiencia, los hijos menores de 6 años y el ingreso del hogar sean 0, las horas trabajadas esperadas serían -48.37 horas al año

\(\beta_1\): Por cada año adicional de educación, las horas trabajadas al año aumentan en 48.37 horas

\(\beta_2\): Por cada año adicional de experiencia laboral, las horas trabajadas al año aumentan en 37.63 horas

\(\beta_3\): Por cada hijo adicional menor de 6 años, las horas trabajadas al año disminuyen en 273.78 horas

\(\beta_4\): Por cada unidad adicional de ingreso del hogar sin contar el de la esposa, las horas trabajadas al año disminuyen en 7 horas

\(R^2\): El modelo explica el 20.28% de la variación en las horas trabajadas

Significancia 11

\(\beta_0\) (Intercept): no se rechaza la hipótesis nula (H0:B0 = 0), no es significativamente distinto a 0

\(\beta_1\) (educ): se rechaza la hipótesis nula (H0:B1 = 0), beta 1 es significativamente distinto a 0, por lo que es valioso para el modelo. Hay una relación significativa entre los años de educación y las horas trabajadas al año.

\(\beta_2\) (exper): se rechaza la hipótesis nula (H0:B2 = 0), beta 2 es significativamente distinto a 0, por lo que es valioso para el modelo. Hay una relación significativa entre los años de experiencia laboral y las horas trabajadas al año.

\(\beta_3\) (kidslt6): se rechaza la hipótesis nula (H0:B3 = 0), beta 3 es significativamente distinto a 0, por lo que es valioso para el modelo. Hay una relación significativa entre el número de hijos menores de 6 años y las horas trabajadas al año.

\(\beta_4\) (nwifeinc): se rechaza la hipótesis nula (H0:B4 = 0), beta 4 es significativamente distinto a 0, por lo que es valioso para el modelo. Hay una relación significativa entre el ingreso del hogar sin la esposa y las horas trabajadas al año.

P valor del modelo: se rechaza la idea de que las variables (años de educación, años de experiencia, número de hijos menores de 6 años e ingreso del hogar sin la esposa) no influyen en las horas trabajadas al año, ya que existe la evidencia estadística suficiente para decir lo contrario. El p-valor global del modelo (2.2e-16) esmenor al nivel de significancia (0.05), lo que indica que el modelo en su conjunto es significativamente válido.

Supuestos 11

Multicolinealidad

check_collinearity(regresion11)
## # Check for Multicollinearity
## 
## Low Correlation
## 
##      Term  VIF   VIF 95% CI adj. VIF Tolerance Tolerance 95% CI
##      educ 1.12 [1.06, 1.25]     1.06      0.89     [0.80, 0.95]
##     exper 1.09 [1.04, 1.23]     1.04      0.92     [0.81, 0.96]
##   kidslt6 1.06 [1.01, 1.23]     1.03      0.95     [0.81, 0.99]
##  nwifeinc 1.13 [1.06, 1.26]     1.06      0.89     [0.80, 0.94]
  • educ: no presenta multicolinealidad problemática con las demás variables del modelo.
  • exper: no presenta multicolinealidad problemática con las demás variables del modelo.
  • kidslt6: no presenta multicolinealidad problemática con las demás variables del modelo.
  • nwifeinc: no presenta multicolinealidad problemática con las demás variables del modelo.

Exogeneidad y forma funcional correcta

check_model(regresion11,check="linearity")

resettest(regresion11,power = 2:3, type="fitted")
## 
##  RESET test
## 
## data:  regresion11
## RESET = 6.5986, df1 = 2, df2 = 746, p-value = 0.001443

Interpretación check_model (linearity): . Si la línea de tendencia es aproximadamente plana y los puntos no muestran patrones sistemáticos, se cumple el supuesto de linealidad. En caso contrario, podría indicar una forma funcional incorrecta.

Interpretación RESET test: La hipótesis nula del test RESET es que la forma funcional del modelo está correctamente especificada. Si el p-valor del test es mayor al nivel de significancia (0.05), no se rechaza H0 y se concluye que no hay evidencia de mala especificación funcional en el modelo que relaciona años de educación, años de experiencia, número de hijos menores de 6 años e ingreso del hogar sin la esposa con las horas trabajadas al año. Si el p-valor es menor a 0.05, se rechaza H0, lo que sugiere que la relación entre años de educación, años de experiencia, número de hijos menores de 6 años e ingreso del hogar sin la esposa y las horas trabajadas al año podría requerir una forma funcional diferente (por ejemplo, términos cuadráticos o logarítmicos).

Heteroscedasticidad

bptest(regresion11)
## 
##  studentized Breusch-Pagan test
## 
## data:  regresion11
## BP = 30.101, df = 4, p-value = 4.668e-06

Interpretación Bptest: Con base en la prueba de Breusch–Pagan studentizada, se obtiene un p-valor de 4.668×10⁻⁶, el cual es mucho menor al nivel de significancia del 5% (e incluso del 1%). Por lo tanto, se rechaza contundentemente la hipótesis nula de homocedasticidad, lo que indica la presencia clara de heterocedasticidad en el modelo regresion11. En consecuencia, la varianza de los errores no es constante, por lo que las inferencias estadísticas basadas en errores estándar clásicos no son válidas.

Gráfica 11

g11a <- ggplot(mroz, aes(x = educ, y = hours)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Educación vs Horas trabajadas",
       x = "Años de educación", y = "Horas trabajadas al año")

g11b <- ggplot(mroz, aes(x = exper, y = hours)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Experiencia vs Horas trabajadas",
       x = "Años de experiencia", y = "Horas trabajadas al año")

g11c <- ggplot(mroz, aes(x = factor(kidslt6), y = hours)) +
  geom_boxplot() +
  labs(title = "Hijos menores de 6 años vs Horas trabajadas",
       x = "Número de hijos menores de 6 años", y = "Horas trabajadas al año")

g11d <- ggplot(mroz, aes(x = nwifeinc, y = hours)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Ingreso del hogar vs Horas trabajadas",
       x = "Ingreso del hogar sin la esposa", y = "Horas trabajadas al año")

(g11a + g11b) / (g11c + g11d)

12 - Salario y características individuales

data("wage1")
kable(head(wage1))
wage educ exper tenure nonwhite female married numdep smsa northcen south west construc ndurman trcommpu trade services profserv profocc clerocc servocc lwage expersq tenursq
3.10 11 2 0 0 1 0 2 1 0 0 1 0 0 0 0 0 0 0 0 0 1.131402 4 0
3.24 12 22 2 0 1 1 3 1 0 0 1 0 0 0 0 1 0 0 0 1 1.175573 484 4
3.00 11 2 0 0 0 0 2 0 0 0 1 0 0 0 1 0 0 0 0 0 1.098612 4 0
6.00 8 44 28 0 0 1 0 1 0 0 1 0 0 0 0 0 0 0 1 0 1.791759 1936 784
5.30 12 7 2 0 0 1 1 0 0 0 1 0 0 0 0 0 0 0 0 0 1.667707 49 4
8.75 16 9 8 0 0 1 0 1 0 0 1 0 0 0 0 0 1 1 0 0 2.169054 81 64
regresion12 <- lm(wage ~ educ + exper + tenure + female, data = wage1)
summary(regresion12)
## 
## Call:
## lm(formula = wage ~ educ + exper + tenure + female, data = wage1)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -7.7675 -1.8080 -0.4229  1.0467 14.0075 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) -1.56794    0.72455  -2.164   0.0309 *  
## educ         0.57150    0.04934  11.584  < 2e-16 ***
## exper        0.02540    0.01157   2.195   0.0286 *  
## tenure       0.14101    0.02116   6.663 6.83e-11 ***
## female      -1.81085    0.26483  -6.838 2.26e-11 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 2.958 on 521 degrees of freedom
## Multiple R-squared:  0.3635, Adjusted R-squared:  0.3587 
## F-statistic:  74.4 on 4 and 521 DF,  p-value: < 2.2e-16

Educación (educ): Se espera que a mayor educación, mayor salario por hora.(Signo positivo)

Experiencia (exper): Se espera que a mayor experiencia laboral, mayor salario.(Signo positivo)

Antigüedad (tenure): Se espera que más años en el mismo empleo se asocien con mayor salario por acumulación de capital humano específico.(Signo positivo)

Sexo (female): Históricamente existe una brecha salarial de género, por lo que se espera que ser mujer se asocie con un menor salario.(Signo negativo)

Reflexión: El modelo posiblemente omite variables relevantes como habilidad cognitiva, tipo de ocupación o sector económico, lo que puede generar sesgo en los coeficientes estimados.

Interpretaciones 12

\(\beta_0\): En el caso hipotético en que la educación, la experiencia, la antigüedad sean 0 y la persona sea hombre, el salario por hora esperado sería -1.56 dólares

\(\beta_1\): Por cada año adicional de educación, el salario por hora aumenta en 0.57 dólares

\(\beta_2\): Por cada año adicional de experiencia laboral, el salario por hora aumenta en 0.02 dólares

\(\beta_3\): Por cada año adicional de antigüedad en el empleo actual, el salario por hora aumenta en 0.14 dólares

\(\beta_4\): En promedio, las mujeres ganan 1.81 dólares menos por hora que los hombres, manteniendo constantes las demás variables

\(R^2\): El modelo explica el 36.35% de la variación en el salario por hora

Significancia 12

\(\beta_0\) (Intercept): se rechaza la hipótesis nula (H0:B0 = 0), beta 0 es significativamente distinto a 0, por lo que es valioso para el modelo

\(\beta_1\) (educ): se rechaza la hipótesis nula (H0:B1 = 0), beta 1 es significativamente distinto a 0, por lo que es valioso para el modelo. Hay una relación significativa entre los años de educación y el salario por hora.

\(\beta_2\) (exper): se rechaza la hipótesis nula (H0:B2 = 0), beta 2 es significativamente distinto a 0, por lo que es valioso para el modelo. Hay una relación significativa entre los años de experiencia laboral y el salario por hora.

\(\beta_3\) (tenure): se rechaza la hipótesis nula (H0:B3 = 0), beta 3 es significativamente distinto a 0, por lo que es valioso para el modelo. Hay una relación significativa entre la antigüedad en el empleo actual y el salario por hora.

\(\beta_4\) (female): se rechaza la hipótesis nula (H0:B4 = 0), beta 4 es significativamente distinto a 0, por lo que es valioso para el modelo. Hay una relación significativa entre el sexo y el salario por hora.

P valor del modelo: se rechaza la idea de que las variables (años de educación, años de experiencia, antigüedad en el empleo y sexo) no influyen en el salario por hora, ya que existe la evidencia estadística suficiente para decir lo contrario. El p-valor global del modelo (2.2e-16) esmenor al nivel de significancia (0.05), lo que indica que el modelo en su conjunto es significativamente válido.

Supuestos 12

Multicolinealidad

check_collinearity(regresion12)
## # Check for Multicollinearity
## 
## Low Correlation
## 
##    Term  VIF   VIF 95% CI adj. VIF Tolerance Tolerance 95% CI
##    educ 1.12 [1.05, 1.29]     1.06      0.89     [0.78, 0.95]
##   exper 1.48 [1.34, 1.68]     1.22      0.68     [0.60, 0.75]
##  tenure 1.40 [1.28, 1.59]     1.18      0.71     [0.63, 0.78]
##  female 1.05 [1.01, 1.31]     1.03      0.95     [0.76, 0.99]
  • educ: no presenta multicolinealidad problemática con las demás variables del modelo.
  • exper: no presenta multicolinealidad problemática con las demás variables del modelo.
  • tenure: no presenta multicolinealidad problemática con las demás variables del modelo.
  • female: no presenta multicolinealidad problemática con las demás variables del modelo.

Exogeneidad y forma funcional correcta

check_model(regresion12,check="linearity")

resettest(regresion12,power = 2:3, type="fitted")
## 
##  RESET test
## 
## data:  regresion12
## RESET = 13.979, df1 = 2, df2 = 519, p-value = 1.221e-06

Interpretación check_model (linearity): . Si la línea de tendencia es aproximadamente plana y los puntos no muestran patrones sistemáticos, se cumple el supuesto de linealidad. En caso contrario, podría indicar una forma funcional incorrecta.

Interpretación RESET test: La hipótesis nula del test RESET es que la forma funcional del modelo está correctamente especificada. Si el p-valor del test es mayor al nivel de significancia (0.05), no se rechaza H0 y se concluye que no hay evidencia de mala especificación funcional en el modelo que relaciona años de educación, años de experiencia, antigüedad en el empleo y sexo con el salario por hora. Si el p-valor es menor a 0.05, se rechaza H0, lo que sugiere que la relación entre años de educación, años de experiencia, antigüedad en el empleo y sexo y el salario por hora podría requerir una forma funcional diferente (por ejemplo, términos cuadráticos o logarítmicos).

Heteroscedasticidad

bptest(regresion12)
## 
##  studentized Breusch-Pagan test
## 
## data:  regresion12
## BP = 44.15, df = 4, p-value = 5.971e-09

Interpretación Bptest: Con base en la prueba de Breusch–Pagan studentizada, se obtiene un p-valor de 5.971×10⁻⁹, el cual es mucho menor al nivel de significancia del 5% (e incluso del 1%). Por lo tanto, se rechaza de manera contundente la hipótesis nula de homocedasticidad, lo que indica la presencia de heterocedasticidad severa en el modelo regresion12. En consecuencia, la varianza de los errores no es constante, lo que invalida el uso de errores estándar clásicos para la inferencia estadística.

Gráfica 12

g12a <- ggplot(wage1, aes(x = educ, y = wage)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Educación vs Salario",
       x = "Años de educación", y = "Salario por hora (USD)")

g12b <- ggplot(wage1, aes(x = exper, y = wage)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Experiencia vs Salario",
       x = "Años de experiencia", y = "Salario por hora (USD)")

g12c <- ggplot(wage1, aes(x = tenure, y = wage)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Antigüedad vs Salario",
       x = "Años en el empleo actual", y = "Salario por hora (USD)")

g12d <- ggplot(wage1, aes(x = factor(female), y = wage)) +
  geom_boxplot() +
  labs(title = "Sexo vs Salario",
       x = "Sexo (0=hombre, 1=mujer)", y = "Salario por hora (USD)")

(g12a + g12b) / (g12c + g12d)

13 - Criminalidad y condiciones socioeconómicas

data("crime1")
kable(head(crime1))
narr86 nfarr86 nparr86 pcnv avgsen tottime ptime86 qemp86 inc86 durat black hispan born60 pcnvsq pt86sq inc86sq
0 0 0 0.38 17.6 35.2 12 0 0.0 0 0 0 1 0.1444 144 0.00000
2 2 0 0.44 0.0 0.0 0 1 0.8 0 0 1 0 0.1936 0 0.64000
1 1 0 0.33 22.8 22.8 0 0 0.0 11 1 0 1 0.1089 0 0.00000
2 2 1 0.25 0.0 0.0 5 2 8.8 0 0 1 1 0.0625 25 77.44000
1 1 0 0.00 0.0 0.0 0 2 8.1 1 0 0 0 0.0000 0 65.61001
0 0 0 1.00 0.0 0.0 0 4 97.6 0 0 0 1 1.0000 0 9525.75977
regresion13 <- lm(narr86 ~ pcnv + qemp86 + inc86, data = crime1)
summary(regresion13)
## 
## Call:
## lm(formula = narr86 ~ pcnv + qemp86 + inc86, data = crime1)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -0.6541 -0.4934 -0.2819  0.3937 11.4436 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  0.654105   0.032024  20.425  < 2e-16 ***
## pcnv        -0.160753   0.040735  -3.946 8.14e-05 ***
## qemp86      -0.041865   0.014231  -2.942  0.00329 ** 
## inc86       -0.001738   0.000344  -5.052 4.67e-07 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.8402 on 2721 degrees of freedom
## Multiple R-squared:  0.04463,    Adjusted R-squared:  0.04358 
## F-statistic: 42.37 on 3 and 2721 DF,  p-value: < 2.2e-16

Probabilidad de condena (pcnv): Se espera que a mayor probabilidad de ser condenado, el efecto disuasivo reduzca el número de arrestos.(Signo negativo)

Empleo (qemp86): Se espera que a mayor vinculación laboral, menor criminalidad por el costo de oportunidad de delinquir.(Signo negativo)

Ingreso legal (inc86): Se espera que a mayor ingreso legal, menor necesidad de recurrir a actividades delictivas.(Signo negativo)

Reflexión: La variable dependiente es de conteo (número de arrestos), lo que puede no ajustarse bien a una regresión lineal. Además, puede existir causalidad inversa: quienes tienen más arrestos pueden tener menor empleabilidad e ingresos, lo que dificulta establecer la dirección de la causalidad.

Interpretaciones 13

\(\beta_0\): En el caso hipotético en que la probabilidad de condena, el empleo y el ingreso legal sean 0, el número de arrestos esperado sería 0.65

\(\beta_1\): Por cada unidad adicional en la probabilidad de condena, el número de arrestos disminuye en 0.16

\(\beta_2\): Por cada unidad adicional en la proporción del año empleado, el número de arrestos disminuye en 0.04

\(\beta_3\): Por cada unidad adicional de ingreso legal, el número de arrestos disminuye en 0.0017

\(R^2\): El modelo explica el 4.46% de la variación en el número de arrestos

Significancia 13

\(\beta_0\) (Intercept): se rechaza la hipótesis nula (H0:B0 = 0), beta 0 es significativamente distinto a 0, por lo que es valioso para el modelo

\(\beta_1\) (pcnv): se rechaza la hipótesis nula (H0:B1 = 0), beta 1 es significativamente distinto a 0, por lo que es valioso para el modelo. Hay una relación significativa entre la probabilidad de condena y el número de arrestos.

\(\beta_2\) (qemp86): se rechaza la hipótesis nula (H0:B2 = 0), beta 2 es significativamente distinto a 0, por lo que es valioso para el modelo. Hay una relación significativa entre la proporción del año empleado y el número de arrestos.

\(\beta_3\) (inc86): se rechaza la hipótesis nula (H0:B3 = 0), beta 3 es significativamente distinto a 0, por lo que es valioso para el modelo. Hay una relación significativa entre el ingreso legal y el número de arrestos.

P valor del modelo: se rechaza la idea de que las variables (probabilidad de condena, proporción del año empleado e ingreso legal) no influyen en el número de arrestos, ya que existe la evidencia estadística suficiente para decir lo contrario. El p-valor global del modelo (2.2e-16) esmenor al nivel de significancia (0.05), lo que indica que el modelo en su conjunto es significativamente válido.

Supuestos 13

Multicolinealidad

check_collinearity(regresion13)
## # Check for Multicollinearity
## 
## Low Correlation
## 
##    Term  VIF       VIF 95% CI adj. VIF Tolerance Tolerance 95% CI
##    pcnv 1.00 [1.00,      Inf]     1.00      1.00     [0.00, 1.00]
##  qemp86 2.03 [1.92,     2.15]     1.42      0.49     [0.47, 0.52]
##   inc86 2.03 [1.92,     2.15]     1.42      0.49     [0.47, 0.52]
  • pcnv: no presenta multicolinealidad problemática con las demás variables del modelo.
  • qemp86: no presenta multicolinealidad problemática con las demás variables del modelo.
  • inc86: no presenta multicolinealidad problemática con las demás variables del modelo.

Exogeneidad y forma funcional correcta

check_model(regresion13,check="linearity")

resettest(regresion13,power = 2:3, type="fitted")
## 
##  RESET test
## 
## data:  regresion13
## RESET = 4.0253, df1 = 2, df2 = 2719, p-value = 0.01796

Interpretación check_model (linearity): . Si la línea de tendencia es aproximadamente plana y los puntos no muestran patrones sistemáticos, se cumple el supuesto de linealidad. En caso contrario, podría indicar una forma funcional incorrecta.

Interpretación RESET test: La hipótesis nula del test RESET es que la forma funcional del modelo está correctamente especificada. Si el p-valor del test es mayor al nivel de significancia (0.05), no se rechaza H0 y se concluye que no hay evidencia de mala especificación funcional en el modelo que relaciona probabilidad de condena, proporción del año empleado e ingreso legal con el número de arrestos. Si el p-valor es menor a 0.05, se rechaza H0, lo que sugiere que la relación entre probabilidad de condena, proporción del año empleado e ingreso legal y el número de arrestos podría requerir una forma funcional diferente (por ejemplo, términos cuadráticos o logarítmicos).

Heteroscedasticidad

bptest(regresion13)
## 
##  studentized Breusch-Pagan test
## 
## data:  regresion13
## BP = 35.364, df = 3, p-value = 1.02e-07

Interpretación Bptest: Con base en la prueba de Breusch–Pagan studentizada, se obtiene un p-valor de 1.02×10⁻⁷, el cual es mucho menor al nivel de significancia del 5% (e incluso del 1%). Por lo tanto, se rechaza de manera contundente la hipótesis nula de homocedasticidad, lo que indica la presencia de heterocedasticidad severa en el modelo regresion13. En consecuencia, la varianza de los errores no es constante, por lo que las inferencias estadísticas basadas en errores estándar convencionales no son válidas.

Gráfica 13

g13a <- ggplot(crime1, aes(x = pcnv, y = narr86)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Prob. condena vs Arrestos",
       x = "Probabilidad de condena", y = "Número de arrestos 1986")

g13b <- ggplot(crime1, aes(x = qemp86, y = narr86)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Empleo vs Arrestos",
       x = "Proporción del año empleado", y = "Número de arrestos 1986")

g13c <- ggplot(crime1, aes(x = inc86, y = narr86)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Ingreso legal vs Arrestos",
       x = "Ingreso legal 1986", y = "Número de arrestos 1986")

g13a + g13b + g13c

14 - Resultados electorales y gasto de campaña

data("vote1")
kable(head(vote1))
state district democA voteA expendA expendB prtystrA lexpendA lexpendB shareA
AL 7 1 68 328.296 8.737001 41 5.793916 2.167567 97.40767
AK 1 0 62 626.377 402.476990 60 6.439952 5.997638 60.88104
AZ 2 1 73 99.607 3.065000 55 4.601233 1.120048 97.01476
AZ 3 0 69 319.690 26.281000 64 5.767352 3.268846 92.40370
AR 3 0 75 159.221 60.054001 66 5.070293 4.095244 72.61247
AR 4 1 69 570.155 21.393000 46 6.345908 3.063064 96.38355
regresion14 <- lm(voteA ~ expendA + expendB + prtystrA, data = vote1)
summary(regresion14)
## 
## Call:
## lm(formula = voteA ~ expendA + expendB + prtystrA, data = vote1)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -26.661  -8.385   0.362   8.536  30.814 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 33.267190   4.416784   7.532 2.87e-12 ***
## expendA      0.034924   0.003369  10.365  < 2e-16 ***
## expendB     -0.034924   0.003001 -11.636  < 2e-16 ***
## prtystrA     0.342514   0.087952   3.894 0.000142 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 11.12 on 169 degrees of freedom
## Multiple R-squared:  0.5687, Adjusted R-squared:  0.561 
## F-statistic: 74.27 on 3 and 169 DF,  p-value: < 2.2e-16

Gasto del candidato A (expendA): Se espera que a mayor gasto de campaña propio, mayor porcentaje de voto obtenido.(Signo positivo)

Gasto del candidato B (expendB): Se espera que a mayor gasto del rival, menor porcentaje de voto para A.(Signo negativo)

Fortaleza partidaria (prtystrA): Se espera que en distritos con mayor apoyo histórico al partido de A, obtenga más votos.(Signo positivo)

Reflexión: Puede existir causalidad inversa porque los candidatos que ya parecen más fuertes tienden a recibir más financiamiento. Además, trabajar con transformaciones logarítmicas del gasto podría ser más apropiado dado que los efectos del dinero en campaña suelen ser decrecientes.

Interpretaciones 14

\(\beta_0\): En el caso hipotético en que el gasto de ambos candidatos y la fortaleza partidaria sean 0, el porcentaje de voto esperado para A sería 33.26%

\(\beta_1\): Por cada unidad adicional de gasto del candidato A, su porcentaje de voto aumenta en 0.03 puntos porcentuales

\(\beta_2\): Por cada unidad adicional de gasto del candidato B, el porcentaje de voto de A disminuye en 0.03 puntos porcentuales

\(\beta_3\): Por cada punto adicional de fortaleza partidaria, el porcentaje de voto de A aumenta en 0.34 puntos porcentuales

\(R^2\): El modelo explica el 56.87% de la variación en el porcentaje de voto del candidato A

Significancia 14

\(\beta_0\) (Intercept): se rechaza la hipótesis nula (H0:B0 = 0), beta 0 es significativamente distinto a 0, por lo que es valioso para el modelo

\(\beta_1\) (expendA): se rechaza la hipótesis nula (H0:B1 = 0), beta 1 es significativamente distinto a 0, por lo que es valioso para el modelo. Hay una relación significativa entre el gasto de campaña del candidato A y su porcentaje de voto.

\(\beta_2\) (expendB): se rechaza la hipótesis nula (H0:B2 = 0), beta 2 es significativamente distinto a 0, por lo que es valioso para el modelo. Hay una relación significativa entre el gasto de campaña del candidato B y el porcentaje de voto del candidato A.

\(\beta_3\) (prtystrA): se rechaza la hipótesis nula (H0:B3 = 0), beta 3 es significativamente distinto a 0, por lo que es valioso para el modelo. Hay una relación significativa entre la fortaleza partidaria del candidato A y su porcentaje de voto.

P valor del modelo: se rechaza la idea de que las variables (gasto de campaña del candidato A, gasto de campaña del candidato B y fortaleza partidaria) no influyen en el porcentaje de voto del candidato A, ya que existe la evidencia estadística suficiente para decir lo contrario. El p-valor global del modelo (2.2e-16) esmenor al nivel de significancia (0.05), lo que indica que el modelo en su conjunto es significativamente válido.

Supuestos 14

Multicolinealidad

check_collinearity(regresion14)
## # Check for Multicollinearity
## 
## Low Correlation
## 
##      Term  VIF   VIF 95% CI adj. VIF Tolerance Tolerance 95% CI
##   expendA 1.25 [1.10, 1.59]     1.12      0.80     [0.63, 0.91]
##   expendB 1.18 [1.06, 1.53]     1.08      0.85     [0.65, 0.95]
##  prtystrA 1.07 [1.01, 1.70]     1.04      0.93     [0.59, 0.99]
  • expendA: no presenta multicolinealidad problemática con las demás variables del modelo.
  • expendB: no presenta multicolinealidad problemática con las demás variables del modelo.
  • prtystrA: no presenta multicolinealidad problemática con las demás variables del modelo.

Exogeneidad y forma funcional correcta

check_model(regresion14,check="linearity")

resettest(regresion14,power = 2:3, type="fitted")
## 
##  RESET test
## 
## data:  regresion14
## RESET = 20.597, df1 = 2, df2 = 167, p-value = 1.011e-08

Interpretación check_model (linearity): . Si la línea de tendencia es aproximadamente plana y los puntos no muestran patrones sistemáticos, se cumple el supuesto de linealidad. En caso contrario, podría indicar una forma funcional incorrecta.

Interpretación RESET test: La hipótesis nula del test RESET es que la forma funcional del modelo está correctamente especificada. Si el p-valor del test es mayor al nivel de significancia (0.05), no se rechaza H0 y se concluye que no hay evidencia de mala especificación funcional en el modelo que relaciona gasto de campaña del candidato A, gasto de campaña del candidato B y fortaleza partidaria con el porcentaje de voto del candidato A. Si el p-valor es menor a 0.05, se rechaza H0, lo que sugiere que la relación entre gasto de campaña del candidato A, gasto de campaña del candidato B y fortaleza partidaria y el porcentaje de voto del candidato A podría requerir una forma funcional diferente (por ejemplo, términos cuadráticos o logarítmicos).

Heteroscedasticidad

bptest(regresion14)
## 
##  studentized Breusch-Pagan test
## 
## data:  regresion14
## BP = 1.8265, df = 3, p-value = 0.6092

Interpretación Bptest: Con base en la prueba de Breusch–Pagan studentizada, se obtiene un p-valor de 0.6092, el cual es mayor al nivel de significancia del 5%. Por lo tanto, no se rechaza la hipótesis nula de homocedasticidad, lo que indica que no existe evidencia estadísticamente significativa de heterocedasticidad en el modelo regresion14. En consecuencia, se asume que la varianza de los errores es constante y que las inferencias estadísticas del modelo son confiables.

Gráfica 14

g14a <- ggplot(vote1, aes(x = expendA, y = voteA)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Gasto A vs Voto A",
       x = "Gasto de campaña candidato A", y = "% de voto candidato A")

g14b <- ggplot(vote1, aes(x = expendB, y = voteA)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Gasto B vs Voto A",
       x = "Gasto de campaña candidato B", y = "% de voto candidato A")

g14c <- ggplot(vote1, aes(x = prtystrA, y = voteA)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Fortaleza partidaria vs Voto A",
       x = "Fortaleza partidaria candidato A", y = "% de voto candidato A")

g14a + g14b + g14c

15 - Felicidad y condiciones de vida

data("happiness")
kable(head(happiness))
year workstat prestige divorce widowed educ reg16 babies preteen teens income region attend happy owngun tvhours vhappy mothfath16 black gwbush04 female blackfemale gwbush00 occattend regattend y94 y96 y98 y00 y02 y04 y06 unem10
1994 keeping house 46 NA iap 12 middle atlantic 2 3 0 $10000 - 14999 middle atlantic sevrl times a yr pretty happy NA 2 0 1 1 NA 1 1 NA 1 0 1 0 0 0 0 0 0 1
1994 working fulltime 22 no iap 12 foreign 0 0 0 NA middle atlantic every week very happy NA 3 1 0 1 NA 0 0 NA 0 0 1 0 0 0 0 0 0 0
1994 working fulltime 29 no iap 12 foreign 0 0 0 $15000 - 19999 middle atlantic more thn once wk pretty happy iap 1 0 0 1 NA 1 1 NA 0 1 1 0 0 0 0 0 0 NA
1994 working fulltime 42 yes iap 8 foreign 0 0 0 $15000 - 19999 middle atlantic once a year not too happy NA 3 0 0 0 NA 0 0 NA 0 0 1 0 0 0 0 0 0 1
1994 working parttime 36 NA NA 13 middle atlantic 0 1 1 $10000 - 14999 middle atlantic once a year not too happy iap NA 0 0 1 NA 1 1 NA 0 0 1 0 0 0 0 0 0 0
1994 working parttime 43 NA NA 15 middle atlantic 0 0 0 $25000 or more middle atlantic sevrl times a yr pretty happy iap 0 0 0 1 NA 1 1 NA 1 0 1 0 0 0 0 0 0 NA
happiness$happy_num <- as.numeric(factor(
  happiness$happy,
  levels = c("not too happy", "pretty happy", "very happy"),
  ordered = TRUE ))
regresion15 <- lm( happy_num ~ educ + income + attend + tvhours, data = happiness, na.action = na.omit )
summary(regresion15)
## 
## Call:
## lm(formula = happy_num ~ educ + income + attend + tvhours, data = happiness, 
##     na.action = na.omit)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -1.5019 -0.2890 -0.1498  0.6328  1.2993 
## 
## Coefficients:
##                         Estimate Std. Error t value Pr(>|t|)    
## (Intercept)             1.834438   0.062348  29.423  < 2e-16 ***
## educ                    0.009232   0.002150   4.294 1.77e-05 ***
## income$1000 to 2999    -0.080735   0.076872  -1.050  0.29363    
## income$3000 to 3999    -0.139446   0.079018  -1.765  0.07764 .  
## income$4000 to 4999    -0.013711   0.078620  -0.174  0.86156    
## income$5000 to 5999     0.042924   0.073873   0.581  0.56122    
## income$6000 to 6999    -0.150789   0.073652  -2.047  0.04065 *  
## income$7000 to 7999    -0.135856   0.074031  -1.835  0.06652 .  
## income$8000 to 9999     0.011428   0.064742   0.177  0.85989    
## income$10000 - 14999    0.068520   0.057780   1.186  0.23570    
## income$15000 - 19999    0.072021   0.058593   1.229  0.21903    
## income$20000 - 24999    0.094011   0.057784   1.627  0.10378    
## income$25000 or more    0.244827   0.055028   4.449 8.71e-06 ***
## attendlt once a year    0.020062   0.024807   0.809  0.41869    
## attendonce a year       0.055135   0.020985   2.627  0.00862 ** 
## attendsevrl times a yr  0.085869   0.021515   3.991 6.62e-05 ***
## attendonce a month      0.104980   0.025379   4.137 3.55e-05 ***
## attend2-3x a month      0.109474   0.023580   4.643 3.48e-06 ***
## attendnrly every week   0.116450   0.028630   4.067 4.79e-05 ***
## attendevery week        0.182566   0.019449   9.387  < 2e-16 ***
## attendmore thn once wk  0.261798   0.025465  10.281  < 2e-16 ***
## tvhours                -0.011918   0.002666  -4.471 7.88e-06 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.5925 on 10174 degrees of freedom
##   (6941 observations deleted due to missingness)
## Multiple R-squared:  0.06416,    Adjusted R-squared:  0.06223 
## F-statistic: 33.22 on 21 and 10174 DF,  p-value: < 2.2e-16

Educación (educ): Se espera que a mayor educación, mayor nivel de felicidad por mejores oportunidades y recursos.(Signo positivo)

Ingreso (income): Se espera que a mayor ingreso familiar, mayor bienestar subjetivo.(Signo positivo)

Asistencia religiosa (attend): Se espera que una mayor práctica religiosa se asocie con mayor felicidad por el apoyo social y espiritual.(Signo positivo)

Horas de televisión (tvhours): Se espera que más horas de televisión se asocien con menor felicidad, posiblemente por sedentarismo o exposición a contenido negativo.(Signo negativo)

Reflexión: La variable happy es ordinal (por ejemplo: no muy feliz, bastante feliz, muy feliz), lo que plantea una limitación para la regresión lineal ya que asume distancias iguales entre categorías, lo cual no necesariamente es cierto.

Interpretaciones 15

\(\beta_0\): En el caso hipotético en que la educación, el ingreso, la asistencia religiosa y las horas de televisión sean 0, el nivel de felicidad esperado sería 1.83 puntos

\(\beta_1\): Por cada año adicional de educación, el nivel de felicidad aumenta en 0.009 puntos

\(\beta_2\):

income ($1000–2999): Las personas en este rango de ingreso tienen en promedio 0.0807 puntos menos de felicidad que la categoría base, manteniendo constantes las demás variables

income ($3000–3999): Las personas en este rango tienen 0.1394 puntos menos de felicidad que la categoría base, ceteris paribus

income ($4000–4999): Las personas en este rango tienen 0.0137 puntos menos de felicidad que la categoría base, ceteris paribus

income ($5000–5999): Las personas en este rango tienen 0.0429 puntos más de felicidad que la categoría base, ceteris paribus

income ($6000–6999): Las personas en este rango tienen 0.1508 puntos menos de felicidad que la categoría base, ceteris paribus

income ($7000–7999): Las personas en este rango tienen 0.1359 puntos menos de felicidad que la categoría base, ceteris paribus

income ($8000–9999): Las personas en este rango tienen 0.0114 puntos más de felicidad que la categoría base, ceteris paribus

income ($10000–14999): Las personas en este rango tienen 0.0685 puntos más de felicidad que la categoría base, ceteris paribus

income ($15000–19999): Las personas en este rango tienen 0.0720 puntos más de felicidad que la categoría base, ceteris paribus

income ($20000–24999): Las personas en este rango tienen 0.0940 puntos más de felicidad que la categoría base, ceteris paribus

income ($25000 o más): Las personas en este rango tienen 0.2448 puntos más de felicidad que la categoría base, ceteris paribus

\(\beta_3\):

attend (menos de una vez al año): El nivel de felicidad aumenta en 0.0201 puntos frente a la categoría base, ceteris paribus

attend (una vez al año): El nivel de felicidad aumenta en 0.0551 puntos, ceteris paribus

attend (varias veces al año): El nivel de felicidad aumenta en 0.0859 puntos, ceteris paribus

attend (una vez al mes): El nivel de felicidad aumenta en 0.1050 puntos, ceteris paribus

attend (2–3 veces al mes): El nivel de felicidad aumenta en 0.1095 puntos, ceteris paribus

attend (casi todas las semanas): El nivel de felicidad aumenta en 0.1165 puntos, ceteris paribus

attend (todas las semanas): El nivel de felicidad aumenta en 0.1826 puntos, ceteris paribus

attend (más de una vez por semana): El nivel de felicidad aumenta en 0.2618 puntos, ceteris paribus

\(\beta_4\): Por cada hora adicional de televisión por día, el nivel de felicidad disminuye en 0.01 puntos

\(R^2\): El modelo explica el 6.41% de la variación en el nivel de felicidad

Significancia 15

\(\beta_0\) (Intercept): se rechaza la hipótesis nula (H0:B0 = 0), beta 0 es significativamente distinto a 0, por lo que es valioso para el modelo

\(\beta_1\) (educ): no se rechaza la hipótesis nula (H0:B1 = 0), beta 1 es significativamente distinto a 0, por lo que es valioso para el modelo. No hay evidencia suficiente de una relación significativa entre los años de educación y el nivel de felicidad.

\(\beta_2\)

income ($1000–2999): no se rechaza la hipótesis nula (H0:β = 0), el coeficiente no es significativamente distinto de 0, por lo que no es valioso para el modelo

income ($3000–3999): se rechaza débilmente la hipótesis nula (H0:β = 0), el coeficiente es débilmente significativo, por lo que es parcialmente valioso para el modelo

income ($4000–4999): no se rechaza la hipótesis nula (H0:β = 0), el coeficiente no es significativamente distinto de 0, por lo que no es valioso para el modelo

income ($5000–5999): no se rechaza la hipótesis nula (H0:β = 0), el coeficiente no es significativamente distinto de 0, por lo que no es valioso para el modelo

income ($6000–6999): se rechaza la hipótesis nula (H0:β = 0), el coeficiente es significativamente distinto de 0, por lo que es valioso para el modelo

income ($7000–7999): se rechaza débilmente la hipótesis nula (H0:β = 0), el coeficiente es débilmente significativo, por lo que es parcialmente valioso para el modelo

income ($8000–9999): no se rechaza la hipótesis nula (H0:β = 0), el coeficiente no es significativamente distinto de 0, por lo que no es valioso para el modelo

income ($10000–14999): no se rechaza la hipótesis nula (H0:β = 0), el coeficiente no es significativamente distinto de 0, por lo que no es valioso para el modelo

income ($15000–19999): no se rechaza la hipótesis nula (H0:β = 0), el coeficiente no es significativamente distinto de 0, por lo que no es valioso para el modelo

income ($20000–24999): no se rechaza la hipótesis nula (H0:β = 0), el coeficiente no es significativamente distinto de 0, por lo que no es valioso para el modelo

income ($25000 o más): se rechaza la hipótesis nula (H0:β = 0), el coeficiente es significativamente distinto de 0, por lo que es valioso para el modelo

\(\beta_3\)

attend (menos de una vez al año): no se rechaza la hipótesis nula (H0:β = 0), el coeficiente no es significativamente distinto de 0, por lo que no es valioso para el modelo

attend (una vez al año): se rechaza la hipótesis nula (H0:β = 0), el coeficiente es significativamente distinto de 0, por lo que es valioso para el modelo

attend (varias veces al año): se rechaza la hipótesis nula (H0:β = 0), el coeficiente es significativamente distinto de 0, por lo que es valioso para el modelo

attend (una vez al mes): se rechaza la hipótesis nula (H0:β = 0), el coeficiente es significativamente distinto de 0, por lo que es valioso para el modelo

attend (2–3 veces al mes): se rechaza la hipótesis nula (H0:β = 0), el coeficiente es significativamente distinto de 0, por lo que es valioso para el modelo

attend (casi todas las semanas): se rechaza la hipótesis nula (H0:β = 0), el coeficiente es significativamente distinto de 0, por lo que es valioso para el modelo

attend (todas las semanas): se rechaza la hipótesis nula (H0:β = 0), el coeficiente es significativamente distinto de 0, por lo que es valioso para el modelo

attend (más de una vez por semana): se rechaza la hipótesis nula (H0:β = 0), el coeficiente es significativamente distinto de 0, por lo que es valioso para el modelo

\(\beta_4\) (tvhours): se rechaza la hipótesis nula (H0:B4 = 0), beta 4 es significativamente distinto a 0, por lo que es valioso para el modelo. Hay una relación significativa entre las horas diarias de televisión y el nivel de felicidad.

P valor del modelo: se rechaza la idea de que las variables (años de educación, nivel de ingreso familiar, frecuencia de asistencia religiosa y horas de televisión) no influyen en el nivel de felicidad, ya que existe la evidencia estadística suficiente para decir lo contrario. El p-valor global del modelo (2.2e-16) esmenor al nivel de significancia (0.05), lo que indica que el modelo en su conjunto es significativamente válido.

Supuestos 15

Multicolinealidad

check_collinearity(regresion15)
## # Check for Multicollinearity
## 
## Low Correlation
## 
##     Term  VIF   VIF 95% CI adj. VIF Tolerance Tolerance 95% CI
##     educ 1.17 [1.15, 1.20]     1.08      0.85     [0.83, 0.87]
##   income 1.18 [1.16, 1.21]     1.01      0.85     [0.83, 0.86]
##   attend 1.03 [1.01, 1.06]     1.00      0.98     [0.95, 0.99]
##  tvhours 1.10 [1.08, 1.13]     1.05      0.91     [0.88, 0.92]
  • educ: no presenta multicolinealidad problemática con las demás variables del modelo.
  • income: no presenta multicolinealidad problemática con las demás variables del modelo.
  • attend: no presenta multicolinealidad problemática con las demás variables del modelo.
  • tvhours: no presenta multicolinealidad problemática con las demás variables del modelo.

Exogeneidad y forma funcional correcta

check_model(regresion15,check="linearity")

resettest(regresion15,power = 2:3, type="fitted")
## 
##  RESET test
## 
## data:  regresion15
## RESET = 2.1525, df1 = 2, df2 = 10172, p-value = 0.1162

Interpretación check_model (linearity): . Si la línea de tendencia es aproximadamente plana y los puntos no muestran patrones sistemáticos, se cumple el supuesto de linealidad. En caso contrario, podría indicar una forma funcional incorrecta.

Interpretación RESET test: La hipótesis nula del test RESET es que la forma funcional del modelo está correctamente especificada. Si el p-valor del test es mayor al nivel de significancia (0.05), no se rechaza H0 y se concluye que no hay evidencia de mala especificación funcional en el modelo que relaciona años de educación, nivel de ingreso familiar, frecuencia de asistencia religiosa y horas de televisión con el nivel de felicidad. Si el p-valor es menor a 0.05, se rechaza H0, lo que sugiere que la relación entre años de educación, nivel de ingreso familiar, frecuencia de asistencia religiosa y horas de televisión y el nivel de felicidad podría requerir una forma funcional diferente (por ejemplo, términos cuadráticos o logarítmicos).

Heteroscedasticidad

bptest(regresion15)
## 
##  studentized Breusch-Pagan test
## 
## data:  regresion15
## BP = 79.673, df = 21, p-value = 9.157e-09

Interpretación Bptest: Con base en la prueba de Breusch–Pagan studentizada, se obtiene un p-valor de 9.157×10⁻⁹, el cual es mucho menor al nivel de significancia del 5% (e incluso del 1%). Por lo tanto, se rechaza de manera contundente la hipótesis nula de homocedasticidad, lo que indica la presencia de heterocedasticidad severa en el modelo regresion15. En consecuencia, la varianza de los errores no es constante, por lo que las inferencias estadísticas basadas en errores estándar clásicos no son válidas.

Gráfica 15

g15a <- ggplot(happiness, aes(x = educ, y = happy)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Educación vs Felicidad",
       x = "Años de educación", y = "Nivel de felicidad")

g15b <- ggplot(happiness, aes(x = income, y = happy)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Ingreso vs Felicidad",
       x = "Ingreso familiar", y = "Nivel de felicidad")

g15c <- ggplot(happiness, aes(x = attend, y = happy)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Asistencia religiosa vs Felicidad",
       x = "Frecuencia de asistencia religiosa", y = "Nivel de felicidad")

g15d <- ggplot(happiness, aes(x = tvhours, y = happy)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "TV vs Felicidad",
       x = "Horas de televisión por día", y = "Nivel de felicidad")

(g15a + g15b) / (g15c + g15d)

16 - Desempeño universitario y antecedentes académicos

data("gpa1")
kable(head(gpa1))
age soph junior senior senior5 male campus business engineer colGPA hsGPA ACT job19 job20 drive bike walk voluntr PC greek car siblings bgfriend clubs skipped alcohol gradMI fathcoll mothcoll
21 0 0 1 0 0 0 1 0 3.0 3.0 21 0 1 1 0 0 0 0 0 1 1 0 0 2 1.0 1 0 0
21 0 0 1 0 0 0 1 0 3.4 3.2 24 0 1 1 0 0 0 0 0 1 0 1 1 0 1.0 1 1 1
20 0 1 0 0 0 0 1 0 3.0 3.6 26 1 0 0 0 1 0 0 0 1 1 0 1 0 1.0 1 1 1
19 1 0 0 0 1 1 1 0 3.5 3.5 27 1 0 0 0 1 0 0 0 0 1 0 0 0 0.0 0 0 0
20 0 1 0 0 0 0 1 0 3.6 3.9 28 0 1 0 1 0 0 0 0 1 1 1 0 0 1.5 1 1 0
20 0 0 1 0 1 1 1 0 3.0 3.4 25 0 0 0 0 1 0 0 0 1 1 0 0 0 0.0 0 1 0
regresion16 <- lm(colGPA ~ hsGPA + ACT + factor(PC) + factor(campus), data = gpa1)
summary(regresion16)
## 
## Call:
## lm(formula = colGPA ~ hsGPA + ACT + factor(PC) + factor(campus), 
##     data = gpa1)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.80327 -0.25990 -0.02446  0.25045  0.77951 
## 
## Coefficients:
##                 Estimate Std. Error t value Pr(>|t|)    
## (Intercept)      1.27280    0.33262   3.827 0.000197 ***
## hsGPA            0.44971    0.09350   4.810 3.96e-06 ***
## ACT              0.00846    0.01052   0.804 0.422536    
## factor(PC)1      0.16396    0.05745   2.854 0.004989 ** 
## factor(campus)1 -0.09124    0.07474  -1.221 0.224299    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.3319 on 136 degrees of freedom
## Multiple R-squared:  0.2278, Adjusted R-squared:  0.2051 
## F-statistic: 10.03 on 4 and 136 DF,  p-value: 3.812e-07

Promedio de secundaria (hsGPA): Se espera que a mayor promedio previo, mayor desempeño universitario.(Signo positivo)

Puntaje ACT (ACT): Se espera que a mayor puntaje en el examen de admisión, mejor desempeño universitario.(Signo positivo)

Computador personal (PC): Se espera que tener computador facilite el estudio y mejore el promedio.(Signo positivo)

Vivir en el campus (campus): Se espera que vivir en el campus facilite el acceso a recursos académicos y mejore el desempeño.(Signo positivo)

Reflexión: El modelo probablemente omite variables importantes como hábitos de estudio, asistencia a clase, motivación o condiciones familiares, lo que puede sesgar los coeficientes estimados.

Interpretaciones 16

\(\beta_0\): En el caso hipotético en que el promedio de secundaria, el ACT sean 0 y el estudiante no tenga computador ni viva en el campus, el promedio universitario esperado sería 1.27 puntos

\(\beta_1\): Por cada punto adicional en el promedio de secundaria, el promedio universitario aumenta en 0.44 puntos

\(\beta_2\): Por cada punto adicional en el puntaje ACT, el promedio universitario aumenta en 0.008 puntos

\(\beta_3\): En promedio, los estudiantes con computador personal tienen un promedio universitario 0.16 puntos mayor que los que no tienen, manteniendo constantes las demás variables

\(\beta_4\): En promedio, los estudiantes que viven en el campus tienen un promedio universitario 0.09 puntos mayor que los que no viven allí, manteniendo constantes las demás variables

\(R^2\): El modelo explica el 22.78% de la variación en el promedio universitario

Significancia 16

\(\beta_0\) (Intercept): se rechaza la hipótesis nula (H0:B0 = 0), beta 0 es significativamente distinto a 0, por lo que es valioso para el modelo

\(\beta_1\) (hsGPA): se rechaza la hipótesis nula (H0:B1 = 0), beta 1 es significativamente distinto a 0, por lo que es valioso para el modelo. Hay una relación significativa entre el promedio de secundaria y el promedio universitario.

\(\beta_2\) (ACT): no se rechaza la hipótesis nula (H0:B2 = 0), beta 2 no es significativamente distinto a 0, por lo que no es valioso para el modelo. No hay evidencia suficiente de una relación significativa entre el puntaje ACT y el promedio universitario.

\(\beta_3\) (PC): se rechaza la hipótesis nula (H0:B3 = 0), beta 3 es significativamente distinto a 0, por lo que es valioso para el modelo. Hay una relación significativa entre tener computador personal y el promedio universitario.

\(\beta_4\) (campus): no se rechaza la hipótesis nula (H0:B4 = 0), beta 4 no es significativamente distinto a 0, por lo que no es valioso para el modelo. No hay evidencia suficiente de una relación significativa entre vivir en el campus y el promedio universitario.

P valor del modelo: se rechaza la idea de que las variables (promedio de secundaria, puntaje ACT, tenencia de computador personal y residencia en el campus) no influyen en el promedio universitario, ya que existe la evidencia estadística suficiente para decir lo contrario. El p-valor global del modelo (3.812e-07) esmenor al nivel de significancia (0.05), lo que indica que el modelo en su conjunto es significativamente válido.

Supuestos 16

Multicolinealidad

check_collinearity(regresion16)
## # Check for Multicollinearity
## 
## Low Correlation
## 
##            Term  VIF       VIF 95% CI adj. VIF Tolerance Tolerance 95% CI
##           hsGPA 1.14 [1.03,     1.59]     1.07      0.88     [0.63, 0.97]
##             ACT 1.14 [1.03,     1.59]     1.07      0.88     [0.63, 0.97]
##      factor(PC) 1.01 [1.00, 20530.90]     1.01      0.99     [0.00, 1.00]
##  factor(campus) 1.01 [1.00, 1.35e+05]     1.00      0.99     [0.00, 1.00]
  • hsGPA: no presenta multicolinealidad problemática con las demás variables del modelo.
  • ACT: no presenta multicolinealidad problemática con las demás variables del modelo.
  • PC: no presenta multicolinealidad problemática con las demás variables del modelo.
  • campus: no presenta multicolinealidad problemática con las demás variables del modelo.

Exogeneidad y forma funcional correcta

check_model(regresion16,check="linearity")

resettest(regresion16,power = 2:3, type="fitted")
## 
##  RESET test
## 
## data:  regresion16
## RESET = 3.3203, df1 = 2, df2 = 134, p-value = 0.03914

Interpretación check_model (linearity): . Si la línea de tendencia es aproximadamente plana y los puntos no muestran patrones sistemáticos, se cumple el supuesto de linealidad. En caso contrario, podría indicar una forma funcional incorrecta.

Interpretación RESET test: La hipótesis nula del test RESET es que la forma funcional del modelo está correctamente especificada. Si el p-valor del test es mayor al nivel de significancia (0.05), no se rechaza H0 y se concluye que no hay evidencia de mala especificación funcional en el modelo que relaciona promedio de secundaria, puntaje ACT, tenencia de computador personal y residencia en el campus con el promedio universitario. Si el p-valor es menor a 0.05, se rechaza H0, lo que sugiere que la relación entre promedio de secundaria, puntaje ACT, tenencia de computador personal y residencia en el campus y el promedio universitario podría requerir una forma funcional diferente (por ejemplo, términos cuadráticos o logarítmicos).

Heteroscedasticidad

bptest(regresion16)
## 
##  studentized Breusch-Pagan test
## 
## data:  regresion16
## BP = 7.5062, df = 4, p-value = 0.1114

Interpretación Bptest: Con base en la prueba de Breusch–Pagan studentizada, se obtiene un p-valor de 0.1114, el cual es mayor al nivel de significancia del 5%. Por lo tanto, no se rechaza la hipótesis nula de homocedasticidad, lo que indica que no existe evidencia estadísticamente significativa de heterocedasticidad en el modelo regresion16. En consecuencia, se asume que la varianza de los errores es constante y que las inferencias estadísticas del modelo son válidas.

Gráfica 16

g16a <- ggplot(gpa1, aes(x = hsGPA, y = colGPA)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Promedio secundaria vs Promedio universitario",
       x = "Promedio de secundaria", y = "Promedio universitario")

g16b <- ggplot(gpa1, aes(x = ACT, y = colGPA)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "ACT vs Promedio universitario",
       x = "Puntaje ACT", y = "Promedio universitario")

g16c <- ggplot(gpa1, aes(x = factor(PC), y = colGPA)) +
  geom_boxplot() +
  labs(title = "Computador vs Promedio universitario",
       x = "Tiene computador (0=No, 1=Sí)", y = "Promedio universitario")

g16d <- ggplot(gpa1, aes(x = factor(campus), y = colGPA)) +
  geom_boxplot() +
  labs(title = "Campus vs Promedio universitario",
       x = "Vive en el campus (0=No, 1=Sí)", y = "Promedio universitario")

(g16a + g16b) / (g16c + g16d)

17 - Precio de vivienda y características del vecindario

data("hprice1")
kable(head(hprice1))
price assess bdrms lotsize sqrft colonial lprice lassess llotsize lsqrft
300.000 349.1 4 6126 2438 1 5.703783 5.855359 8.720297 7.798934
370.000 351.5 3 9903 2076 1 5.913503 5.862210 9.200593 7.638198
191.000 217.7 3 5200 1374 0 5.252274 5.383118 8.556414 7.225481
195.000 231.8 3 4600 1448 1 5.273000 5.445875 8.433811 7.277938
373.000 319.1 4 6095 2514 1 5.921578 5.765504 8.715224 7.829630
466.275 414.5 5 8566 2754 1 6.144775 6.027073 9.055556 7.920810
regresion17 <- lm(price ~ sqrft + bdrms + lotsize + assess, data = hprice1)
summary(regresion17)
## 
## Call:
## lm(formula = price ~ sqrft + bdrms + lotsize + assess, data = hprice1)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -102.911  -19.148   -1.947   20.926  197.270 
## 
## Coefficients:
##               Estimate Std. Error t value Pr(>|t|)    
## (Intercept) -3.889e+01  2.150e+01  -1.809   0.0741 .  
## sqrft       -5.175e-04  1.708e-02  -0.030   0.9759    
## bdrms        1.160e+01  6.550e+00   1.772   0.0801 .  
## lotsize      5.867e-04  4.963e-04   1.182   0.2405    
## assess       9.083e-01  1.040e-01   8.730 2.26e-13 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 43.46 on 83 degrees of freedom
## Multiple R-squared:  0.8292, Adjusted R-squared:  0.821 
## F-statistic: 100.7 on 4 and 83 DF,  p-value: < 2.2e-16

Área construida (sqrft): Se espera que a mayor área construida, mayor precio de la vivienda.(Signo positivo)

Habitaciones (bdrms): Se espera que más habitaciones aumenten el precio.(Signo positivo)

Tamaño del lote (lotsize): Se espera que un lote más grande se asocie con mayor precio.(Signo positivo)

Valor catastral (assess): Se espera que el avalúo catastral sea un buen predictor del precio de mercado.(Signo positivo)

Reflexión: Es muy probable que exista multicolinealidad entre assess, sqrft y lotsize porque el avalúo catastral generalmente ya incorpora el área y el lote en su cálculo. Trabajar con transformaciones logarítmicas podría ser más apropiado para interpretar elasticidades y reducir posibles problemas de heterocedasticidad.

Interpretaciones 17

\(\beta_0\): En el caso hipotético en que el área construida, las habitaciones, el lote y el avalúo sean 0, el precio esperado de la vivienda sería -38.89 dólares

\(\beta_1\): Por cada pie cuadrado adicional de área construida, el precio de la vivienda disminuye en -0.00051 dólares

\(\beta_2\): Por cada habitación adicional, el precio de la vivienda aumenta en 11.6 dólares

\(\beta_3\): Por cada pie cuadrado adicional de lote, el precio de la vivienda aumenta en 0.00058 dólares

\(\beta_4\): Por cada dólar adicional en el valor catastral, el precio de mercado aumenta en 0.9 dólares

\(R^2\): El modelo explica el 82.92% de la variación en el precio de la vivienda

Significancia 17

\(\beta_0\) (Intercept): no se rechaza la hipótesis nula (H0:B0 = 0), beta 0 no es significativamente distinto a 0, por lo que no es valioso para el modelo

\(\beta_1\) (sqrft): no se rechaza la hipótesis nula (H0:B1 = 0), beta 1 no es significativamente distinto a 0, por lo que no es valioso para el modelo. No hay evidencia suficiente de una relación significativa entre el área construida y el precio de la vivienda.

\(\beta_2\) (bdrms): no se rechaza la hipótesis nula (H0:B2 = 0), beta 2 no es significativamente distinto a 0, por lo que no es valioso para el modelo. No hay evidencia suficiente de una relación significativa entre el número de habitaciones y el precio de la vivienda.

\(\beta_3\) (lotsize): no se rechaza la hipótesis nula (H0:B3 = 0), beta 3 no es significativamente distinto a 0, por lo que no es valioso para el modelo. No hay evidencia suficiente de una relación significativa entre el tamaño del lote y el precio de la vivienda.

\(\beta_4\) (assess): se rechaza la hipótesis nula (H0:B4 = 0), beta 4 es significativamente distinto a 0, por lo que es valioso para el modelo. Hay una relación significativa entre el valor catastral y el precio de la vivienda.

P valor del modelo: se rechaza la idea de que las variables (área construida, número de habitaciones, tamaño del lote y valor catastral) no influyen en el precio de la vivienda, ya que existe la evidencia estadística suficiente para decir lo contrario. El p-valor global del modelo (2.2e-16) esmenor al nivel de significancia (0.05), lo que indica que el modelo en su conjunto es significativamente válido.

Supuestos 17

Multicolinealidad

check_collinearity(regresion17)
## # Check for Multicollinearity
## 
## Low Correlation
## 
##     Term  VIF   VIF 95% CI adj. VIF Tolerance Tolerance 95% CI
##    sqrft 4.48 [3.25, 6.39]     2.12      0.22     [0.16, 0.31]
##    bdrms 1.40 [1.17, 1.95]     1.18      0.71     [0.51, 0.86]
##  lotsize 1.17 [1.04, 1.77]     1.08      0.85     [0.57, 0.96]
##   assess 4.53 [3.28, 6.46]     2.13      0.22     [0.15, 0.30]
  • sqrft: puede presentar multicolinealidad con el valor catastral, ya que el avalúo generalmente incorpora el área construida en su cálculo.
  • bdrms: no presenta multicolinealidad problemática con las demás variables del modelo.
  • lotsize: no presenta multicolinealidad problemática con las demás variables del modelo.
  • assess: puede presentar multicolinealidad con el área construida, ya que el avalúo catastral generalmente incorpora el tamaño en su cálculo.

Exogeneidad y forma funcional correcta

check_model(regresion17,check="linearity")

resettest(regresion17,power = 2:3, type="fitted")
## 
##  RESET test
## 
## data:  regresion17
## RESET = 3.7633, df1 = 2, df2 = 81, p-value = 0.02736

Interpretación check_model (linearity): . Si la línea de tendencia es aproximadamente plana y los puntos no muestran patrones sistemáticos, se cumple el supuesto de linealidad. En caso contrario, podría indicar una forma funcional incorrecta.

Interpretación RESET test: La hipótesis nula del test RESET es que la forma funcional del modelo está correctamente especificada. Si el p-valor del test es mayor al nivel de significancia (0.05), no se rechaza H0 y se concluye que no hay evidencia de mala especificación funcional en el modelo que relaciona área construida, número de habitaciones, tamaño del lote y valor catastral con el precio de la vivienda. Si el p-valor es menor a 0.05, se rechaza H0, lo que sugiere que la relación entre área construida, número de habitaciones, tamaño del lote y valor catastral y el precio de la vivienda podría requerir una forma funcional diferente (por ejemplo, términos cuadráticos o logarítmicos).

Heteroscedasticidad

bptest(regresion17)
## 
##  studentized Breusch-Pagan test
## 
## data:  regresion17
## BP = 2.3425, df = 4, p-value = 0.673

Interpretación Bptest: Con base en la prueba de Breusch–Pagan studentizada, se obtiene un p-valor de 0.673, el cual es mayor al nivel de significancia del 5%. Por lo tanto, no se rechaza la hipótesis nula de homocedasticidad, lo que indica que no existe evidencia estadísticamente significativa de heterocedasticidad en el modelo regresion17. En consecuencia, se asume que la varianza de los errores es constante y que las inferencias estadísticas del modelo son confiables.

Gráfica 17

g17a <- ggplot(hprice1, aes(x = sqrft, y = price)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Área construida vs Precio",
       x = "Área construida (pie²)", y = "Precio (USD)")

g17b <- ggplot(hprice1, aes(x = bdrms, y = price)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Habitaciones vs Precio",
       x = "Número de habitaciones", y = "Precio (USD)")

g17c <- ggplot(hprice1, aes(x = lotsize, y = price)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Tamaño del lote vs Precio",
       x = "Tamaño del lote (pie²)", y = "Precio (USD)")

g17d <- ggplot(hprice1, aes(x = assess, y = price)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Valor catastral vs Precio",
       x = "Valor catastral (USD)", y = "Precio (USD)")

(g17a + g17b) / (g17c + g17d)

18 - Relaciones extramatrimoniales y características del matrimonio

data("Affairs")
kable(head(Affairs))
affairs gender age yearsmarried children religiousness education occupation rating
4 0 male 37 10.00 no 3 18 7 4
5 0 female 27 4.00 no 4 14 6 4
11 0 female 32 15.00 yes 1 12 1 4
16 0 male 57 15.00 yes 5 18 6 5
23 0 male 22 0.75 no 2 17 6 3
29 0 female 32 1.50 no 2 17 5 5
regresion18 <- lm(affairs ~ age + yearsmarried + religiousness + rating, data = Affairs)
summary(regresion18)
## 
## Call:
## lm(formula = affairs ~ age + yearsmarried + religiousness + rating, 
##     data = Affairs)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -4.9303 -1.7382 -0.7841  0.1553 12.7559 
## 
## Coefficients:
##               Estimate Std. Error t value Pr(>|t|)    
## (Intercept)    5.88603    0.77528   7.592 1.22e-13 ***
## age           -0.04333    0.02162  -2.004   0.0455 *  
## yearsmarried   0.15510    0.03666   4.231 2.69e-05 ***
## religiousness -0.48684    0.11120  -4.378 1.41e-05 ***
## rating        -0.70545    0.11832  -5.962 4.27e-09 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3.09 on 596 degrees of freedom
## Multiple R-squared:  0.1282, Adjusted R-squared:  0.1223 
## F-statistic:  21.9 on 4 and 596 DF,  p-value: < 2.2e-16

Edad (age): Se espera que a mayor edad, mayor probabilidad de relaciones extramatrimoniales por mayor exposición temporal.(Signo positivo)

Años de matrimonio (yearsmarried): Se espera que más años de matrimonio se asocien con mayor frecuencia de infidelidades por desgaste de la relación.(Signo positivo)

Religiosidad (religiousness): Se espera que a mayor religiosidad, menor frecuencia de relaciones extramatrimoniales por restricciones morales.(Signo negativo)

Calidad del matrimonio (rating): Se espera que una mejor evaluación del matrimonio se asocie con menor frecuencia de infidelidades.(Signo negativo)

Reflexión: La variable affairs toma muchos valores de cero y es de conteo, lo que hace que una regresión lineal no sea la más apropiada. Además, existe probable sesgo de medición por subreporte, ya que las personas pueden no reportar con exactitud este tipo de comportamiento.

Interpretaciones 18

\(\beta_0\): En el caso hipotético en que la edad, los años de matrimonio, la religiosidad y la calidad del matrimonio sean 0, la frecuencia de relaciones extramatrimoniales esperada sería 5.88

\(\beta_1\): Por cada año adicional de edad, la frecuencia de relaciones extramatrimoniales disminuye en 0.04 unidades

\(\beta_2\): Por cada año adicional de matrimonio, la frecuencia de relaciones extramatrimoniales aumenta en 0.15 unidades

\(\beta_3\): Por cada unidad adicional de religiosidad, la frecuencia de relaciones extramatrimoniales disminuye en 0.48 unidades

\(\beta_4\): Por cada punto adicional en la evaluación de la calidad del matrimonio, la frecuencia de relaciones extramatrimoniales disminuye en 0.7 unidades

\(R^2\): El modelo explica el 12.82% de la variación en la frecuencia de relaciones extramatrimoniales

Significancia 18

\(\beta_0\) (Intercept): se rechaza la hipótesis nula (H0:B0 = 0), beta 0 es significativamente distinto a 0, por lo que es valioso para el modelo

\(\beta_1\) (age): se rechaza la hipótesis nula (H0:B1 = 0), beta 1 es significativamente distinto a 0, por lo que es valioso para el modelo. Hay una relación significativa entre la edad y la frecuencia de relaciones extramatrimoniales.

\(\beta_2\) (yearsmarried): se rechaza la hipótesis nula (H0:B2 = 0), beta 2 es significativamente distinto a 0, por lo que es valioso para el modelo. Hay una relación significativa entre los años de matrimonio y la frecuencia de relaciones extramatrimoniales.

\(\beta_3\) (religiousness): se rechaza la hipótesis nula (H0:B3 = 0), beta 3 es significativamente distinto a 0, por lo que es valioso para el modelo. Hay una relación significativa entre el nivel de religiosidad y la frecuencia de relaciones extramatrimoniales.

\(\beta_4\) (rating): se rechaza la hipótesis nula (H0:B4 = 0), beta 4 es significativamente distinto a 0, por lo que es valioso para el modelo. Hay una relación significativa entre la calidad del matrimonio y la frecuencia de relaciones extramatrimoniales.

P valor del modelo: se rechaza la idea de que las variables (edad, años de matrimonio, nivel de religiosidad y calidad del matrimonio) no influyen en la frecuencia de relaciones extramatrimoniales, ya que existe la evidencia estadística suficiente para decir lo contrario. El p-valor global del modelo (2.2e-16) esmenor al nivel de significancia (0.05), lo que indica que el modelo en su conjunto es significativamente válido.

Supuestos 18

Multicolinealidad

check_collinearity(regresion18)
## # Check for Multicollinearity
## 
## Low Correlation
## 
##           Term  VIF   VIF 95% CI adj. VIF Tolerance Tolerance 95% CI
##            age 2.53 [2.24, 2.89]     1.59      0.39     [0.35, 0.45]
##   yearsmarried 2.62 [2.32, 2.99]     1.62      0.38     [0.33, 0.43]
##  religiousness 1.06 [1.01, 1.26]     1.03      0.94     [0.79, 0.99]
##         rating 1.07 [1.02, 1.25]     1.03      0.93     [0.80, 0.98]
  • age: no presenta multicolinealidad problemática con las demás variables del modelo.
  • yearsmarried: no presenta multicolinealidad problemática con las demás variables del modelo.
  • religiousness: no presenta multicolinealidad problemática con las demás variables del modelo.
  • rating: no presenta multicolinealidad problemática con las demás variables del modelo.

Exogeneidad y forma funcional correcta

check_model(regresion18,check="linearity")

resettest(regresion18,power = 2:3, type="fitted")
## 
##  RESET test
## 
## data:  regresion18
## RESET = 8.3796, df1 = 2, df2 = 594, p-value = 0.0002577

Interpretación check_model (linearity): . Si la línea de tendencia es aproximadamente plana y los puntos no muestran patrones sistemáticos, se cumple el supuesto de linealidad. En caso contrario, podría indicar una forma funcional incorrecta.

Interpretación RESET test: La hipótesis nula del test RESET es que la forma funcional del modelo está correctamente especificada. Si el p-valor del test es mayor al nivel de significancia (0.05), no se rechaza H0 y se concluye que no hay evidencia de mala especificación funcional en el modelo que relaciona edad, años de matrimonio, nivel de religiosidad y calidad del matrimonio con la frecuencia de relaciones extramatrimoniales. Si el p-valor es menor a 0.05, se rechaza H0, lo que sugiere que la relación entre edad, años de matrimonio, nivel de religiosidad y calidad del matrimonio y la frecuencia de relaciones extramatrimoniales podría requerir una forma funcional diferente (por ejemplo, términos cuadráticos o logarítmicos).

Heteroscedasticidad

bptest(regresion18)
## 
##  studentized Breusch-Pagan test
## 
## data:  regresion18
## BP = 53.972, df = 4, p-value = 5.335e-11

Interpretación Bptest: Con base en la prueba de Breusch–Pagan studentizada, se obtiene un p-valor de 5.335×10⁻¹¹, el cual es mucho menor al nivel de significancia del 5% (e incluso del 1%). Por lo tanto, se rechaza de manera contundente la hipótesis nula de homocedasticidad, lo que indica la presencia de heterocedasticidad extremadamente severa en el modelo regresion18. En consecuencia, la varianza de los errores no es constante, por lo que las inferencias estadísticas basadas en errores estándar clásicos no son válidas.

Gráfica 18

g18a <- ggplot(Affairs, aes(x = age, y = affairs)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Edad vs Relaciones extramatrimoniales",
       x = "Edad", y = "Frecuencia de relaciones extramatrimoniales")

g18b <- ggplot(Affairs, aes(x = yearsmarried, y = affairs)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Años de matrimonio vs Relaciones extramatrimoniales",
       x = "Años de matrimonio", y = "Frecuencia de relaciones extramatrimoniales")

g18c <- ggplot(Affairs, aes(x = religiousness, y = affairs)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Religiosidad vs Relaciones extramatrimoniales",
       x = "Nivel de religiosidad", y = "Frecuencia de relaciones extramatrimoniales")

g18d <- ggplot(Affairs, aes(x = rating, y = affairs)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Calidad del matrimonio vs Relaciones extramatrimoniales",
       x = "Evaluación del matrimonio", y = "Frecuencia de relaciones extramatrimoniales")

(g18a + g18b) / (g18c + g18d)

19 - Vocabulario, educación y cambio generacional

data("Vocab")
kable(head(Vocab))
year sex education vocabulary
19740001 1974 Male 14 9
19740002 1974 Male 16 9
19740003 1974 Female 10 9
19740004 1974 Female 10 5
19740005 1974 Female 12 8
19740006 1974 Male 16 8
regresion19 <- lm(vocabulary ~ education + sex + year, data = Vocab)
summary(regresion19)
## 
## Call:
## lm(formula = vocabulary ~ education + sex + year, data = Vocab)
## 
## Residuals:
##    Min     1Q Median     3Q    Max 
## -8.329 -1.132  0.071  1.247  8.499 
## 
## Coefficients:
##               Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 27.9220592  1.6904269  16.518  < 2e-16 ***
## education    0.3435340  0.0035478  96.831  < 2e-16 ***
## sexMale     -0.1688028  0.0214176  -7.882 3.34e-15 ***
## year        -0.0131920  0.0008513 -15.496  < 2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 1.848 on 30347 degrees of freedom
## Multiple R-squared:  0.2365, Adjusted R-squared:  0.2364 
## F-statistic:  3134 on 3 and 30347 DF,  p-value: < 2.2e-16

Educación (education): Se espera que a mayor educación, mayor puntaje en vocabulario.(Signo positivo)

Sexo (sex): No hay una hipótesis clara sobre la dirección, aunque históricamente pueden existir diferencias por acceso desigual a la educación.

Año de la encuesta (year): Se espera que con el paso del tiempo los puntajes de vocabulario puedan cambiar, capturando efectos generacionales o cambios en el sistema educativo.

Reflexión: El año de la encuesta puede estar capturando cambios generacionales o temporales en los puntajes. Sería pertinente considerar interacciones como educación×año o educación×sexo para ver si el efecto de la educación ha cambiado con el tiempo o difiere entre grupos.

Interpretaciones 19

\(\beta_0\): En el caso hipotético en que la educación y el año sean 0 y la persona sea del grupo de referencia de sexo, el puntaje de vocabulario esperado sería 27.92 puntos

\(\beta_1\): Por cada año adicional de educación, el puntaje de vocabulario aumenta en 0.34 puntos

\(\beta_2\): En promedio, las personas del grupo de sexo de comparación (hombers) tienen un puntaje de vocabulario 0.16 puntos menor que el grupo de referencia (mujeres), manteniendo constantes las demás variables

\(\beta_3\): Por cada año adicional en el año de la encuesta, el puntaje de vocabulario disminuye en0.013 puntos

\(R^2\): El modelo explica el X% de la variación en el puntaje de vocabulario

Significancia 19

\(\beta_0\) (Intercept): se rechaza la hipótesis nula (H0:B0 = 0), beta 0 es significativamente distinto a 0, por lo que es valioso para el modelo

\(\beta_1\) (education): se rechaza la hipótesis nula (H0:B1 = 0), beta 1 es significativamente distinto a 0, por lo que es valioso para el modelo. Hay una relación significativa entre los años de educación y el puntaje de vocabulario.

\(\beta_2\) (sex): se rechaza la hipótesis nula (H0:B2 = 0), beta 2 es significativamente distinto a 0, por lo que es valioso para el modelo. Hay una relación significativa entre el sexo y el puntaje de vocabulario.

\(\beta_3\) (year): se rechaza la hipótesis nula (H0:B3 = 0), beta 3 es significativamente distinto a 0, por lo que es valioso para el modelo. Hay una relación significativa entre el año de la encuesta y el puntaje de vocabulario.

P valor del modelo: se rechaza la idea de que las variables (años de educación, sexo y año de la encuesta) no influyen en el puntaje de vocabulario, ya que existe la evidencia estadística suficiente para decir lo contrario. El p-valor global del modelo (2.2e-16) esmenor al nivel de significancia (0.05), lo que indica que el modelo en su conjunto es significativamente válido.

Supuestos 19

Multicolinealidad

check_collinearity(regresion19)
## # Check for Multicollinearity
## 
## Low Correlation
## 
##       Term  VIF   VIF 95% CI adj. VIF Tolerance Tolerance 95% CI
##  education 1.04 [1.03, 1.05]     1.02      0.96     [0.95, 0.97]
##        sex 1.00 [1.00, 2.25]     1.00      1.00     [0.44, 1.00]
##       year 1.04 [1.03, 1.05]     1.02      0.96     [0.95, 0.97]
  • education: no presenta multicolinealidad problemática con las demás variables del modelo.
  • sex: no presenta multicolinealidad problemática con las demás variables del modelo.
  • year: no presenta multicolinealidad problemática con las demás variables del modelo.

Exogeneidad y forma funcional correcta

check_model(regresion19,check="linearity")

resettest(regresion19,power = 2:3, type="fitted")
## 
##  RESET test
## 
## data:  regresion19
## RESET = 89.331, df1 = 2, df2 = 30345, p-value < 2.2e-16

Interpretación check_model (linearity): . Si la línea de tendencia es aproximadamente plana y los puntos no muestran patrones sistemáticos, se cumple el supuesto de linealidad. En caso contrario, podría indicar una forma funcional incorrecta.

Interpretación RESET test: La hipótesis nula del test RESET es que la forma funcional del modelo está correctamente especificada. Si el p-valor del test es mayor al nivel de significancia (0.05), no se rechaza H0 y se concluye que no hay evidencia de mala especificación funcional en el modelo que relaciona años de educación, sexo y año de la encuesta con el puntaje de vocabulario. Si el p-valor es menor a 0.05, se rechaza H0, lo que sugiere que la relación entre años de educación, sexo y año de la encuesta y el puntaje de vocabulario podría requerir una forma funcional diferente (por ejemplo, términos cuadráticos o logarítmicos).

Heteroscedasticidad

bptest(regresion19)
## 
##  studentized Breusch-Pagan test
## 
## data:  regresion19
## BP = 59.824, df = 3, p-value = 6.41e-13

Interpretación Bptest: Con base en la prueba de Breusch–Pagan studentizada, se obtiene un p-valor de 6.41×10⁻¹³, el cual es mucho menor al nivel de significancia del 5% (e incluso del 1%). Por lo tanto, se rechaza de manera contundente la hipótesis nula de homocedasticidad, lo que indica la presencia de heterocedasticidad extremadamente severa en el modelo regresion19. En consecuencia, la varianza de los errores no es constante, por lo que las inferencias estadísticas basadas en errores estándar clásicos no son válidas.

Gráfica 19

g19a <- ggplot(Vocab, aes(x = education, y = vocabulary)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Educación vs Vocabulario",
       x = "Años de educación", y = "Puntaje de vocabulario")

g19b <- ggplot(Vocab, aes(x = factor(sex), y = vocabulary)) +
  geom_boxplot() +
  labs(title = "Sexo vs Vocabulario",
       x = "Sexo", y = "Puntaje de vocabulario")

g19c <- ggplot(Vocab, aes(x = year, y = vocabulary)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Año de encuesta vs Vocabulario",
       x = "Año de la encuesta", y = "Puntaje de vocabulario")

g19a + g19b + g19c

20 - Liberación antes del juicio y desigualdad social

data("Arrests")
kable(head(Arrests))
released colour year age sex employed citizen checks
Yes White 2002 21 Male Yes Yes 3
No Black 1999 17 Male Yes Yes 3
Yes White 2000 24 Male Yes Yes 3
No Black 2000 46 Male Yes Yes 1
Yes Black 1999 27 Female Yes Yes 1
Yes Black 1998 16 Female Yes Yes 0
regresion20 <- lm(as.numeric(released) ~ colour + age + sex + employed + checks, data = Arrests)
summary(regresion20)
## 
## Call:
## lm(formula = as.numeric(released) ~ colour + age + sex + employed + 
##     checks, data = Arrests)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.96528  0.04466  0.09606  0.19480  0.54263 
## 
## Coefficients:
##               Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  1.7500347  0.0269497  64.937  < 2e-16 ***
## colourWhite  0.0730359  0.0117614   6.210 5.72e-10 ***
## age          0.0002784  0.0006061   0.459    0.646    
## sexMale     -0.0025900  0.0180113  -0.144    0.886    
## employedYes  0.1280905  0.0126173  10.152  < 2e-16 ***
## checks      -0.0493668  0.0034075 -14.488  < 2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.3593 on 5220 degrees of freedom
## Multiple R-squared:  0.08883,    Adjusted R-squared:  0.08796 
## F-statistic: 101.8 on 5 and 5220 DF,  p-value: < 2.2e-16

Grupo racial (colour): Se espera que pueda existir un efecto del grupo racial en la probabilidad de liberación, dado que la literatura documenta sesgos sistémicos en el sistema judicial.(Signo incierto)

Edad (age): Se espera que personas mayores tengan mayor probabilidad de liberación por percibirse como menor riesgo de fuga.(Signo positivo)

Sexo (sex): Se espera que las mujeres tengan mayor probabilidad de liberación por sesgos históricos en el sistema judicial.(Signo positivo para mujer)

Empleo (employed): Se espera que tener empleo se asocie con mayor probabilidad de liberación por indicar arraigo social.(Signo positivo)

Antecedentes (checks): Se espera que más antecedentes reduzcan la probabilidad de liberación.(Signo negativo)

Reflexión: La variable dependiente released es binaria (sí/no), lo que hace que una regresión lineal no sea la más apropiada técnicamente ya que puede predecir valores fuera del rango 0,1. Sin embargo, como aproximación inicial es útil para identificar las direcciones de los efectos. Además, variables omitidas como la gravedad del delito o el acceso a defensa legal pueden sesgar los resultados.

Interpretaciones 20

\(\beta_0\): En el caso hipotético en que todas las variables numéricas sean 0 y las categóricas estén en su categoría de referencia, la probabilidad de liberación esperada sería 1.75

\(\beta_1\): En promedio, las personas del grupo racial de comparación (white) tienen una probabilidad de liberación 0.07 puntos mayor que el grupo de referencia(black), manteniendo constantes las demás variables

\(\beta_2\): Por cada año adicional de edad, la probabilidad de liberación aumenta en 0.07 puntos

\(\beta_3\): En promedio, las personas del grupo de sexo de comparación(male) tienen una probabilidad de liberación 0.002 puntos menor que el grupo de referencia(female), manteniendo constantes las demás variables

\(\beta_4\): En promedio, las personas empleadas tienen una probabilidad de liberación 0.12 puntos mayor que las desempleadas, manteniendo constantes las demás variables

\(\beta_5\): Por cada antecedente adicional, la probabilidad de liberación disminuye en 0.04 puntos

\(R^2\): El modelo explica el 8.88% de la variación en la probabilidad de liberación

Significancia 20

\(\beta_0\) (Intercept): se rechaza la hipótesis nula (H0:B0 = 0), beta 0 es significativamente distinto a 0, por lo que es valioso para el modelo

\(\beta_1\) (colour): se rechaza la hipótesis nula (H0:B1 = 0), beta 1 es significativamente distinto a 0, por lo que es valioso para el modelo. Hay una relación significativa entre el grupo racial y la probabilidad de liberación antes del juicio.

\(\beta_2\) (age): no se rechaza la hipótesis nula (H0:B2 = 0), beta 2 no es significativamente distinto a 0, por lo que no es valioso para el modelo. No hay evidencia suficiente de una relación significativa entre la edad y la probabilidad de liberación antes del juicio.

\(\beta_3\) (sex): no se rechaza la hipótesis nula (H0:B3 = 0), beta 3 no es significativamente distinto a 0, por lo que no es valioso para el modelo. No hay evidencia suficiente de una relación significativa entre el sexo y la probabilidad de liberación antes del juicio.

\(\beta_4\) (employed): se rechaza la hipótesis nula (H0:B4 = 0), beta 4 es significativamente distinto a 0, por lo que es valioso para el modelo. Hay una relación significativa entre la situación de empleo y la probabilidad de liberación antes del juicio.

\(\beta_5\) (checks): se rechaza la hipótesis nula (H0:B5 = 0), beta 5 es significativamente distinto a 0, por lo que es valioso para el modelo. Hay una relación significativa entre el número de antecedentes y la probabilidad de liberación antes del juicio.

P valor del modelo: se rechaza la idea de que las variables (grupo racial, edad, sexo, situación de empleo y número de antecedentes) no influyen en la probabilidad de liberación antes del juicio, ya que existe la evidencia estadística suficiente para decir lo contrario. El p-valor global del modelo (2.2e-16) esmenor al nivel de significancia (0.05), lo que indica que el modelo en su conjunto es significativamente válido.

Supuestos 20

Multicolinealidad

check_collinearity(regresion20)
## # Check for Multicollinearity
## 
## Low Correlation
## 
##      Term  VIF   VIF 95% CI adj. VIF Tolerance Tolerance 95% CI
##    colour 1.04 [1.02, 1.08]     1.02      0.96     [0.92, 0.98]
##       age 1.03 [1.01, 1.08]     1.01      0.97     [0.93, 0.99]
##       sex 1.02 [1.00, 1.08]     1.01      0.98     [0.92, 1.00]
##  employed 1.08 [1.06, 1.12]     1.04      0.92     [0.89, 0.95]
##    checks 1.11 [1.08, 1.15]     1.06      0.90     [0.87, 0.92]
  • colour: no presenta multicolinealidad problemática con las demás variables del modelo.
  • age: no presenta multicolinealidad problemática con las demás variables del modelo.
  • sex: no presenta multicolinealidad problemática con las demás variables del modelo.
  • employed: no presenta multicolinealidad problemática con las demás variables del modelo.
  • checks: no presenta multicolinealidad problemática con las demás variables del modelo.

Exogeneidad y forma funcional correcta

check_model(regresion20,check="linearity")

resettest(regresion20,power = 2:3, type="fitted")
## 
##  RESET test
## 
## data:  regresion20
## RESET = 10.485, df1 = 2, df2 = 5218, p-value = 2.855e-05

Interpretación check_model (linearity): . La línea de tendencia es aproximadamente plana pero los puntos muestran patrones sistemáticos por lo que no se cumple el supuesto de linealidad. Lo que podría indicar una forma funcional incorrecta.

Interpretación RESET test: La hipótesis nula del test RESET es que la forma funcional del modelo está correctamente especificada. El el p-valor es menor a 0.05, se rechaza H0, lo que sugiere que la relación entre grupo racial, edad, sexo, situación de empleo y número de antecedentes y la probabilidad de liberación antes del juicio podría requerir una forma funcional diferente (por ejemplo, términos cuadráticos o logarítmicos).

Heteroscedasticidad

bptest(regresion20)
## 
##  studentized Breusch-Pagan test
## 
## data:  regresion20
## BP = 410.21, df = 5, p-value < 2.2e-16

Interpretación Bptest: Con base en la prueba de Breusch–Pagan studentizada, se obtiene un p-valor menor a 2.2×10⁻¹⁶, el cual es mucho menor al nivel de significancia del 5% (e incluso del 1%). Por lo tanto, se rechaza de manera absolutamente contundente la hipótesis nula de homocedasticidad, lo que indica la presencia de heterocedasticidad extremadamente severa en el modelo regresion20. En consecuencia, la varianza de los errores no es constante, por lo que las inferencias estadísticas basadas en errores estándar clásicos son completamente inválidas.

Gráfica 20

g20a <- ggplot(Arrests, aes(x = factor(colour), y = as.numeric(released))) +
  geom_boxplot() +
  labs(title = "Grupo racial vs Liberación",
       x = "Grupo racial", y = "Liberación (1=Sí, 2=No)")

g20b <- ggplot(Arrests, aes(x = age, y = as.numeric(released))) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Edad vs Liberación",
       x = "Edad", y = "Liberación (1=Sí, 2=No)")

g20c <- ggplot(Arrests, aes(x = factor(employed), y = as.numeric(released))) +
  geom_boxplot() +
  labs(title = "Empleo vs Liberación",
       x = "Empleado (No/Sí)", y = "Liberación (1=Sí, 2=No)")

g20d <- ggplot(Arrests, aes(x = checks, y = as.numeric(released))) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE) +
  labs(title = "Antecedentes vs Liberación",
       x = "Número de antecedentes", y = "Liberación (1=Sí, 2=No)")

(g20a + g20b) / (g20c + g20d)