Ejercicio_1

Sea el conjunto de datos, indicados en el enlace de abajo, tomados en 24 meses correspondientes a los gastos de comercializacion (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 Autocorrelacion para el modelo propuesto.
  2. En caso de encontrar evidencia de violacion de los supuestos, planteados en el literal anterior, corrija a traves de un estimador HAC apropiado, el modelo propuesto.
Carga de datos y Estimacion del modelo.
library(stargazer)
library(readxl)
ventas_empresa <- read_excel("C:/Users/melvi/Desktop/Econometria/Datos/ventas_empresa.xlsx")
# Correr el modelo
Modelo_ventas<-lm(formula = V~C+P+M,data = ventas_empresa)
stargazer(Modelo_ventas,title = 'Estimacion ventas',type = 'html')
Estimacion ventas
Dependent variable:
V
C 0.923***
(0.223)
P 0.950***
(0.156)
M 1.298***
(0.431)
Constant 107.444***
(18.057)
Observations 24
R2 0.980
Adjusted R2 0.977
Residual Std. Error 9.506 (df = 20)
F Statistic 323.641*** (df = 3; 20)
Note: p<0.1; p<0.05; p<0.01

Heterocesaticidad

Prueba de White (Breush-Pagan)

library(lmtest)
prueba_white<-bptest(Modelo_ventas,~I(C^2)+I(P^2)+I(M^2)+C*P+C*M+P*M,data = ventas_empresa)
print(prueba_white)
## 
##  studentized Breusch-Pagan test
## 
## data:  Modelo_ventas
## BP = 7.1227, df = 9, p-value = 0.6244
#No se detecta evidencia de Heterocedasticidad dado que el p-value > 0.05, presentando evidencia que la varianza de los residuos es homocedastica.

Autocorrelacion

Autocorrelacion de segundo orden usando ML (Breusch-Godfrey)

library(lmtest)
prueba_LM<-bgtest(Modelo_ventas,order = 2)
print(prueba_LM)
## 
##  Breusch-Godfrey test for serial correlation of order up to 2
## 
## data:  Modelo_ventas
## LM test = 3.8409, df = 2, p-value = 0.1465
#No hay evidencia de Autocorrelacion de segundo orden dado que el p-value > 0.05

Autocorrelacion de primer orden usando prueba Durbin-Watson

library(car)
durbinWatsonTest(Modelo_ventas,simulate = TRUE,reps = 1000)
##  lag Autocorrelation D-W Statistic p-value
##    1       0.3013888      1.299572   0.056
##  Alternative hypothesis: rho != 0
#Podemos observar que el estadistico de prueba DW es no concluyente porque n=24 que dentro de tabla tienen valores dl=1.101 y du=1.656 se tiene que 1.101 < DW < 1.656, por lo que tomaremos en cuenta el valor p value de la prueba para la regla de decision y el p value > 0.05 por lo que no hay evidencia de Autocorrelacion de primer orden.

Autocorrelacion de primer orden usando libreria lmtest

library(lmtest)
bgtest(Modelo_ventas, order = 1)
## 
##  Breusch-Godfrey test for serial correlation of order up to 1
## 
## data:  Modelo_ventas
## LM test = 2.5963, df = 1, p-value = 0.1071
#En la prueba anterior pudimos observar un valor de p-value muy cercano al nivel de significancia, por lo que acudimos a corroborar la prueba bajo la libreria lmtest y observamos que el P - value tiene un valor de 0.1071 > 0.05 concluyendo que no hay evidencia de Autocorrelacion de primer orden.

Ejercicio_2

Se tienen los datos para trabajadores hombres,en el archivo adjunto, con ellos estime un modelo donde educ es años de escolaridad, como variable dependiente, y como regresores sibs (numero de hermanos), meduc (anios de escolaridad de la madre) y feduc (anios de escolaridad del padre).
  1. Verifique los supuestos de Heterocedastidad y Autocorrelacion para el modelo propuesto.
  2. En caso de encontrar evidencia de violación de los supuestos, planteados en el literal anterior, corrija a traves de un estimador HAC apropiado, el modelo propuesto.
Carga de datos y Estimacion del modelo
library(stargazer)
load('C:/Users/melvi/Desktop/Econometria/Datos/wage2.RData')
# Correr el modelo
Modelo_escolaridad<-lm(formula = educ~sibs+meduc+feduc,data = wage2)
stargazer(Modelo_escolaridad,title = 'Modelo escolaridad',type = 'html')
Modelo escolaridad
Dependent variable:
educ
sibs -0.094***
(0.034)
meduc 0.131***
(0.033)
feduc 0.210***
(0.027)
Constant 10.364***
(0.359)
Observations 722
R2 0.214
Adjusted R2 0.211
Residual Std. Error 1.987 (df = 718)
F Statistic 65.198*** (df = 3; 718)
Note: p<0.1; p<0.05; p<0.01

Heteocedasticidad.

Prueba de White (Breusch-Pagan)

library(lmtest)
prueba_white_wage<-bptest(Modelo_escolaridad,~I(sibs^2)+I(meduc^2)+I(feduc^2)+sibs*meduc+sibs*feduc+meduc*feduc,data = wage2)
print(prueba_white_wage)
## 
##  studentized Breusch-Pagan test
## 
## data:  Modelo_escolaridad
## BP = 15.537, df = 9, p-value = 0.0772
#No se detecta evidencia de Heterocedasticidad dado que p-value > 0.05, por lo que hay evidencia que la varianza de los residuos es homocedastica.

Autocorrelacion

Autocorrelacion de segundo orden usando ML (Breusch-Godfrey)

library(lmtest)
prueba_LM_wage<-bgtest(Modelo_escolaridad,order = 2)
print(prueba_LM_wage)
## 
##  Breusch-Godfrey test for serial correlation of order up to 2
## 
## data:  Modelo_escolaridad
## LM test = 4.5747, df = 2, p-value = 0.1015
#No hay evidencia de autocorrelacion de segundo orden dado que p-value > 0.05

Autocorrelacion de primer orden usando la prueba de D-W

library(car)
durbinWatsonTest(model = Modelo_escolaridad)
##  lag Autocorrelation D-W Statistic p-value
##    1      0.05018452      1.898938   0.186
##  Alternative hypothesis: rho != 0
#No hay evidencia de autocorrelacion de primer orden dado que  p-value > 0.05

Ejercicio_3.

El sueldo inicial medio (salary) para los recienn graduados de la Facultad de Economia se determina mediante una funcion lineal: log (salary) = f (SAT, 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 numero de volumenes en la biblioteca de la Facultad de Economia, cost es el costo anual por asistir a dicha facultad y rank es una clasificacion de las escuelas de Economia (siendo rank 1 la mejor).

  1. Verifique los supuestos de Heterocedastidad y Autocorrelacion para el modelo propuesto.
  2. En caso de encontrar evidencia de violacion de los supuestos, planteados en el literal anterior, corrija a traves de un estimador HAC apropiado, el modelo propuesto

Carga de datos y Estimacion del modelo.

load('C:/Users/melvi/Desktop/Econometria/Datos/LAWSCH85.RData')
# Estimando el modelo
library(stargazer)
Modelo_sueldo<-lm(formula = lsalary~LSAT+GPA+llibvol+lcost+rank,data = LAWSCH85)
stargazer(Modelo_sueldo,title = 'Modelo sueldo',type = 'html')
Modelo sueldo
Dependent variable:
lsalary
LSAT 0.005
(0.004)
GPA 0.248***
(0.090)
llibvol 0.095***
(0.033)
lcost 0.038
(0.032)
rank -0.003***
(0.0003)
Constant 8.343***
(0.533)
Observations 136
R2 0.842
Adjusted R2 0.836
Residual Std. Error 0.112 (df = 130)
F Statistic 138.230*** (df = 5; 130)
Note: p<0.1; p<0.05; p<0.01

Heterocedasticidad.

Prueba de White (Breusch Pagan)
library(lmtest)
prueba_white_law<-bptest(Modelo_sueldo,~I(LSAT^2)+I(GPA^2)+I(llibvol^2)+I(lcost^2)+I(rank^2)+I(llibvol^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_white_law)
## 
##  studentized Breusch-Pagan test
## 
## data:  Modelo_sueldo
## BP = 34.295, df = 20, p-value = 0.0242
#Hay evidencia de heterocedasticidad dado que p-value < 0.05

Autocorrelacion

Autocorrelacion de segundo orden usando ML (Breusch-Godfrey)
library(lmtest)
prueba_LM_law<-bgtest(Modelo_sueldo,order = 2)
print(prueba_LM_law)
## 
##  Breusch-Godfrey test for serial correlation of order up to 2
## 
## data:  Modelo_sueldo
## LM test = 3.2116, df = 2, p-value = 0.2007
#No hay evidencia de Autocorrelacion de segundo orden dado que el p-value > 0.05

Autocorrelacion de primer orden usando la prueba de Durbin Watson

library(car)
durbinWatsonTest(model = Modelo_sueldo)
##  lag Autocorrelation D-W Statistic p-value
##    1        0.144458      1.705846   0.074
##  Alternative hypothesis: rho != 0
#No hay evidencia de Autocorrelacion de primer orden dado que P-value > 0.05

Correccion del problema de Heterocedasticidad con el estimador HAC(vcovHC)

options(scipen = 99999)
library(lmtest)
library(sandwich)
estimacion_omega<-vcovHC(Modelo_sueldo,type = "HC0") 
coeftest(Modelo_sueldo,vcov. = estimacion_omega)
## 
## 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