Ejercicio 1.

Sea el conjunto de datos, tomados en 24 meses correspondientes a los gastos de comercialización (C) de una empresa, el nivel de ventas (V), su coste de personal (P) y los costes de materias primas (M); se trata de estimar el nivel de ventas a partir de las restantes variables.

  1. Verifique los supuestos de Heterocedastidad y Autocorrelación para el modelo propuesto.

  2. En caso de encontrar evidencia de violación de los supuestos, planteados en el literal anterior, corrija a través de un estimador HAC apropiado, el modelo propuesto.

Cargando los datos

library(readxl)
ventas_empresa <- read_excel("C:/Users/usuario/Desktop/ventas_empresa.xlsx")

Estimando el modelo ventas

library(stargazer)
modelo_ventas<- lm(formula = V~C+P+M, data = ventas_empresa)
stargazer(modelo_ventas, title = "Modelo de ventas", type = "html", digits = 6)
Modelo de ventas
Dependent variable:
V
C 0.922567***
(0.222733)
P 0.950177***
(0.155845)
M 1.297786***
(0.430729)
Constant 107.443500***
(18.057490)
Observations 24
R2 0.979817
Adjusted R2 0.976789
Residual Std. Error 9.505570 (df = 20)
F Statistic 323.641500*** (df = 3; 20)
Note: p<0.1; p<0.05; p<0.01

Verificando heterocedasticidad con la Prueba de White (BP)

library(lmtest)
prueba_White1<-bptest(modelo_ventas,~I(C^2)+I(P^2)+I(M^2)+C*P+C*M+P*M,data = ventas_empresa)
print(prueba_White1)
## 
##  studentized Breusch-Pagan test
## 
## data:  modelo_ventas
## BP = 7.1227, df = 9, p-value = 0.6244

La prueba de White muestra p-value > 0.05 (nivel de significancia), por lo tanto, la hipótesis nula no se rechaza y se concluye que no hay evidencia de heterocedasticidad en la varianza de los residuos del modelo de ventas.

Verificando autocorrelación de segundo orden con la prueba Breusch-Godfrey

library(lmtest)
BG_test1<-bgtest(modelo_ventas,order = 2)
print(BG_test1)
## 
##  Breusch-Godfrey test for serial correlation of order up to 2
## 
## data:  modelo_ventas
## LM test = 3.8409, df = 2, p-value = 0.1465

La prueba de Breusch-Godfrey muestra: p-value > 0.05 (nivel de significancia), por lo tanto la hipótesis nula no se rechaza y se concluye que no hay evidencia de autocorrelación de segundo orden en los residuos del modelo de ventas.

Verificando autocorrelación de primer orden con la prueba Durbin-Watson

library(car)
durbinWatsonTest(model = modelo_ventas, simulate = TRUE, reps = 10000)
##  lag Autocorrelation D-W Statistic p-value
##    1       0.3013888      1.299572   0.059
##  Alternative hypothesis: rho != 0

La prueba de Durbin-Watson muestra: p-value > 0.05 (nivel de significancia), por lo tanto, la hipótesis nula no se rechaza y se concluye que no hay evidencia de autocorrelación de primer orden en los residuos del modelo de ventas.

Ejercicio 2.

Se tienen los datos para trabajadores hombres, con ellos estime un modelo donde educ es años de escolaridad, como variable dependiente, y como regresores sibs (número de hermanos), meduc (años de escolaridad de la madre) y feduc (años de escolaridad del padre)

  1. Verifique los supuestos de Heterocedastidad y Autocorrelación para el modelo propuesto.

  2. En caso de encontrar evidencia de violación de los supuestos, planteados en el literal anterior, corrija a través de un estimador HAC apropiado, el modelo propuesto.

Cargando datos

load("C:/Users/usuario/Desktop/wage2.RData")

Estimando el modelo de Escolaridad

modelo_educ<-lm(formula= educ~sibs+meduc+feduc, data=wage2)
stargazer(modelo_educ, title = "Modelo de Escolaridad", type = "html", digits = 6)
Modelo de Escolaridad
Dependent variable:
educ
sibs -0.093636***
(0.034471)
meduc 0.130787***
(0.032689)
feduc 0.210004***
(0.027475)
Constant 10.364260***
(0.358500)
Observations 722
R2 0.214094
Adjusted R2 0.210810
Residual Std. Error 1.987052 (df = 718)
F Statistic 65.198250*** (df = 3; 718)
Note: p<0.1; p<0.05; p<0.01

Verificando heterocedasticidad con la Prueba de White (BP)

library(lmtest)
prueba_White2<-bptest(modelo_educ,~I(sibs^2)+I(meduc^2)+I(feduc^2)+sibs*meduc+ sibs*feduc+meduc*feduc,data = wage2)
print(prueba_White2)
## 
##  studentized Breusch-Pagan test
## 
## data:  modelo_educ
## BP = 15.537, df = 9, p-value = 0.0772

La prueba de White muestra: p-value > 0.05 (nivel de significancia), por lo tanto la hipótesis nula no se rechaza y se concluye que no hay evidencia de heterocedasticidad en la varianza de los residuos del modelo de escolaridad.

Verificando autocorrelación de segundo orden con la prueba Breusch-Godfrey

library(lmtest)
BG_test2<-bgtest(modelo_educ,order = 2)
print(BG_test2)
## 
##  Breusch-Godfrey test for serial correlation of order up to 2
## 
## data:  modelo_educ
## LM test = 4.5747, df = 2, p-value = 0.1015

La prueba de Breusch-Godfrey muestra p-value > 0.05 (nivel de significancia), por lo tanto la hipótesis nula no se rechaza y se concluye que no hay evidencia de autocorrelación de segundo orden en los residuos del modelo de escolaridad.

Verificando autocorrelación de primer orden con la prueba Durbin-Watson

library(car)
durbinWatsonTest(model = modelo_educ)
##  lag Autocorrelation D-W Statistic p-value
##    1      0.05018452      1.898938    0.19
##  Alternative hypothesis: rho != 0

La prueba de Durbin-Watson muestra: p-value > 0.05 (nivel de significancia, por lo tanto la hipótesis nula no se rechaza y se concluye que tampoco hay evidencia de autocorrelación de primer orden en los residuos del modelo de escolaridad, este modelo no adolece de heterocedasticidad ni de autocorrelación y se puede decir que sus residuos son homocedásticos y no autocorrelacionados.

Ejercicio 3.

El sueldo inicial medio (salary) para los recién graduados de la Facultad de Economía se determina mediante una función lineal: log(salary)=f(LSAT,GPA ,log(libvol),log(cost),rank)

Donde LSAT es la media del puntaje LSAT del grupo de graduados, GPA es la media del GPA (promedio general) del grupo, libvol es el número de volúmenes en la biblioteca de la Facultad de Economía, cost es el costo anual por asistir a dicha facultad y rank es una clasificación de las escuelas de Economía (siendo rank 1 la mejor)

  1. Verifique los supuestos de Heterocedastidad y Autocorrelación para el modelo propuesto.

  2. En caso de encontrar evidencia de violación de los supuestos, planteados en el literal anterior, corrija a través de un estimador HAC apropiado, el modelo propuesto.

Cargando datos

load("C:/Users/usuario/Desktop/LAWSCH85.RData")

Estimando el modelo de sueldos

modelo_sueldos<-lm(formula = lsalary~LSAT+GPA+llibvol+lcost+rank, data = LAWSCH85)
stargazer(modelo_sueldos, title = "Modelo de Sueldos", type = "html", digits = 6)
Modelo de Sueldos
Dependent variable:
lsalary
LSAT 0.004696
(0.004010)
GPA 0.247524***
(0.090037)
llibvol 0.094993***
(0.033254)
lcost 0.037554
(0.032106)
rank -0.003325***
(0.000348)
Constant 8.343226***
(0.532519)
Observations 136
R2 0.841685
Adjusted R2 0.835596
Residual Std. Error 0.112412 (df = 130)
F Statistic 138.229800*** (df = 5; 130)
Note: p<0.1; p<0.05; p<0.01

Verificando heterocedasticidad con la Prueba de White (BP)

library(lmtest)
prueba_White3<-bptest(modelo_sueldos,~I(LSAT^2)+I(GPA^2)+I(llibvol^2)+I(lcost^2)+I(rank^2)+LSAT*GPA+LSAT*llibvol+LSAT*lcost+LSAT*rank+GPA*llibvol+GPA*lcost+GPA*rank+llibvol*lcost+llibvol*rank+lcost*rank,data = LAWSCH85)
print(prueba_White3)
## 
##  studentized Breusch-Pagan test
## 
## data:  modelo_sueldos
## BP = 34.295, df = 20, p-value = 0.0242

La prueba de White muestra: p-value < 0.05 (nivel de significancia), por lo tanto la hipótesis nula sí se rechaza y se concluye que sí hay evidencia de heterocedasticidad en la varianza de los residuos del modelo de sueldos.

Verificando autocorrelación de segundo orden con la prueba Breusch-Godfrey

library(lmtest)
BG_test3<-bgtest(modelo_sueldos,order = 2)
print(BG_test3)
## 
##  Breusch-Godfrey test for serial correlation of order up to 2
## 
## data:  modelo_sueldos
## LM test = 3.2116, df = 2, p-value = 0.2007

La prueba de Breusch-Godfrey muestra: p-value > 0.05 (nivel de significancia), por lo tanto la hipótesis nula no se rechaza y se concluye que no hay evidencia de autocorrelación de segundo orden en los residuos del modelo de sueldos.

Verificando autocorrelación de primer orden con la prueba Durbin-Watson

library(car)
durbinWatsonTest(model = modelo_sueldos)
##  lag Autocorrelation D-W Statistic p-value
##    1        0.144458      1.705846   0.078
##  Alternative hypothesis: rho != 0

La prueba de Durbin-Watson muestra: p-value > 0.05 (nivel de significancia), por lo tanto la hipótesis nula no se rechaza y se concluye que no hay evidencia de autocorrelación de primer orden en los residuos del modelo de sueldos.

Corrigiendo el problema de heterocedasticidad mediante el uso del estimador HAC

options(scipen = 99999)
library(lmtest)
# Salida del modelo sin corregir
coeftest(modelo_sueldos)
## 
## t test of coefficients:
## 
##                Estimate  Std. Error t value              Pr(>|t|)    
## (Intercept)  8.34322596  0.53251920 15.6675 < 0.00000000000000022 ***
## LSAT         0.00469647  0.00401049  1.1710              0.243722    
## GPA          0.24752388  0.09003704  2.7491              0.006826 ** 
## llibvol      0.09499321  0.03325435  2.8566              0.004988 ** 
## lcost        0.03755380  0.03210608  1.1697              0.244270    
## rank        -0.00332459  0.00034846 -9.5408 < 0.00000000000000022 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
options(scipen = 99999)
library(lmtest)
library(sandwich)
#Salida del modelo corrigiendo heterocedasticidad
omega_est2<-vcovHC(modelo_sueldos,type = "HC0") 

coeftest(modelo_sueldos,vcov. = omega_est2)
## 
## t test of coefficients:
## 
##                Estimate  Std. Error  t value              Pr(>|t|)    
## (Intercept)  8.34322596  0.50982819  16.3648 < 0.00000000000000022 ***
## LSAT         0.00469647  0.00447644   1.0492             0.2960540    
## GPA          0.24752388  0.08861505   2.7932             0.0060073 ** 
## llibvol      0.09499321  0.02703852   3.5133             0.0006095 ***
## lcost        0.03755380  0.03258921   1.1523             0.2512966    
## rank        -0.00332459  0.00030126 -11.0356 < 0.00000000000000022 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Al tratarse de un modelo que solo presenta heterocedasticidad, se intenta corregir con el estimador HAC de tipo HC0 y al comparar la salida sin corrección y la salida corregida, se observa una disminución en los errores estándar que generan valores t mayores.