Modelo estimado
library(readr)
library(stargazer)
ejemplo_regresion <- read_csv("C:/Users/74/Desktop/ejemplo_regresion.csv")
modelo_lineal<-lm(Y~X1+X2,data = ejemplo_regresion)
stargazer(modelo_lineal,title = "modelo estimado",type = "text")
##
## modelo estimado
## ===============================================
## Dependent variable:
## ---------------------------
## Y
## -----------------------------------------------
## X1 0.237***
## (0.056)
##
## X2 -0.0002***
## (0.00003)
##
## Constant 1.564***
## (0.079)
##
## -----------------------------------------------
## Observations 25
## R2 0.865
## Adjusted R2 0.853
## Residual Std. Error 0.053 (df = 22)
## F Statistic 70.661*** (df = 2; 22)
## ===============================================
## Note: *p<0.1; **p<0.05; ***p<0.01
Calculo de Prueba White
library(stargazer)
errores<-modelo_lineal$residuals
data_prueba_white<-as.data.frame(cbind(errores,ejemplo_regresion))
regresion_auxiliar<-lm(I(errores^2)~X1+X2+I(X1^2)+I(X2^2)+X1*X2,data = data_prueba_white)
sumario<-summary(regresion_auxiliar)
n<-nrow(data_prueba_white)
R_2<-sumario$r.squared
LM_w<-n*R_2
gl=2+2+1
p_value<-1-pchisq(q = LM_w,df = gl)
VC<-qchisq(p = 0.95,df = gl)
salida_white<-c(LM_w,VC,p_value)
names(salida_white)<-c("LMw","Valor Critico","P-value")
stargazer(salida_white,title = "Resultados de la prueba de White",type = "text",digits = 6)
##
## Resultados de la prueba de White
## ===============================
## LMw Valor Critico P-value
## -------------------------------
## 3.690182 11.070500 0.594826
## -------------------------------
#Obtenemos p-value>valor de significancia, Por lo tanto no se rechaza la Hipotesis nula, concluimos que hay evidencia de que la varianza de los errores es homocedastica.
Calculo de PW usando la libreria “lmtest”
library(lmtest)
prueba_white<-bptest(modelo_lineal,~I(X1^2)+I(X2^2)+X1*X2,data = ejemplo_regresion)
print(prueba_white, type = "text")
##
## studentized Breusch-Pagan test
##
## data: modelo_lineal
## BP = 3.6902, df = 5, p-value = 0.5948
#Obtenemos p-value>valor de significancia, Por lo tanto no se rechaza la Hipotesis nula, concluimos que hay evidencia de que la varianza de los errores es homocedastica.
Prueba de Durbin Watson
Usando libreria “lmtest”
library(lmtest)
dwtest(modelo_lineal,alternative = "two.sided",iterations = 1000)
##
## Durbin-Watson test
##
## data: modelo_lineal
## DW = 1.9483, p-value = 0.5649
## alternative hypothesis: true autocorrelation is not 0
Usando libreria “car”
library(car)
durbinWatsonTest(modelo_lineal,simulate = TRUE,reps = 1000)
## lag Autocorrelation D-W Statistic p-value
## 1 -0.04366918 1.948305 0.548
## Alternative hypothesis: rho != 0
#En los dos calculos, se puede rechazar la presencia de autocorrelacion (No se rechaza la Hiptesis nula), ya que el pvalue>0.05
Prueba del Multiplicador de Lagrange [Breusch-Godfrey]
Preparacion de datos
library(dplyr)
library(tidyr)
library(kableExtra)
cbind(errores,ejemplo_regresion) %>%
as.data.frame() %>%
mutate(Lag_1=dplyr::lag(errores,1),
Lag_2=dplyr::lag(errores,2)) %>%
replace_na(list(Lag_1=0,Lag_2=0))->data_prueba_BG
kable(head(data_prueba_BG,6))
|
errores
|
X1
|
X2
|
Y
|
Lag_1
|
Lag_2
|
|
0.0734697
|
3.92
|
7298
|
0.75
|
0.0000000
|
0.0000000
|
|
-0.0033412
|
3.61
|
6855
|
0.71
|
0.0734697
|
0.0000000
|
|
-0.0391023
|
3.32
|
6636
|
0.66
|
-0.0033412
|
0.0734697
|
|
-0.0621832
|
3.07
|
6506
|
0.61
|
-0.0391023
|
-0.0033412
|
|
0.0162403
|
3.06
|
6450
|
0.70
|
-0.0621832
|
-0.0391023
|
|
0.0124247
|
3.11
|
6402
|
0.72
|
0.0162403
|
-0.0621832
|
Calculando la regresion auxiliar y el estadistico LMBP
Calculo de DW usando libreria “lmtest”
library(lmtest)
bgtest(modelo_lineal,order = 2)
##
## Breusch-Godfrey test for serial correlation of order up to 2
##
## data: modelo_lineal
## LM test = 3.3052, df = 2, p-value = 0.1916
#Como pvalue>0.05 No se rechaza H0, por lo tanto puede concluirse que los errores del modelo, no siguen autocorrelacion de orden 2
El test BG puede usarse tambien para verificar la autocorrelacion de 1 orden:
library(lmtest)
bgtest(modelo_lineal,order = 1)
##
## Breusch-Godfrey test for serial correlation of order up to 1
##
## data: modelo_lineal
## LM test = 0.051063, df = 1, p-value = 0.8212
#Como pvalue>0.05 No se rechaza H0, por lo tanto puede concluirse que los errores del modelo, no siguen autocorrelacion de 1 orden