library(wooldridge)
data(hprice1)
head(force(hprice1),n=5)
## price assess bdrms lotsize sqrft colonial lprice lassess llotsize lsqrft
## 1 300 349.1 4 6126 2438 1 5.703783 5.855359 8.720297 7.798934
## 2 370 351.5 3 9903 2076 1 5.913503 5.862210 9.200593 7.638198
## 3 191 217.7 3 5200 1374 0 5.252274 5.383118 8.556414 7.225482
## 4 195 231.8 3 4600 1448 1 5.273000 5.445875 8.433811 7.277938
## 5 373 319.1 4 6095 2514 1 5.921578 5.765504 8.715224 7.829630
library(stargazer)
options(scipen = 999999)
modelo_lineal<-lm(formula = price~lotsize+sqrft+bdrms,data = hprice1)
stargazer(modelo_lineal,title="Ejemplo de Regresion Multiple",type = "html",digits = 8)
| Dependent variable: | |
| price | |
| lotsize | 0.00206771*** |
| (0.00064213) | |
| sqrft | 0.12277820*** |
| (0.01323741) | |
| bdrms | 13.85252000 |
| (9.01014500) | |
| Constant | -21.77031000 |
| (29.47504000) | |
| Observations | 88 |
| R2 | 0.67236220 |
| Adjusted R2 | 0.66066090 |
| Residual Std. Error | 59.83348000 (df = 84) |
| F Statistic | 57.46023000*** (df = 3; 84) |
| Note: | p<0.1; p<0.05; p<0.01 |
#Para verificar si los datos se ajustan a una distribucion normal
library(fitdistrplus)
ajuste_normal<-fitdist(data=modelo_lineal$residuals,distr="norm")
plot(ajuste_normal)
Las Hipotesis de la Prueba
Ho: S=0 ⋀ K-3=0
Hi: S≠0 ⋀ K−3≠0
library(normtest)
jb.norm.test(modelo_lineal$residuals)->JB
print(JB)
##
## Jarque-Bera test for normality
##
## data: modelo_lineal$residuals
## JB = 32.278, p-value = 0.001
#Calculamos el Valor Critico
VC_JB<-qchisq(p=0.95,df=2)
print(VC_JB)
## [1] 5.991465
#Graficamos el Estadistico de Prueba
library(fastGraph)
shadeDist(xshade = JB$statistic,ddist = "dchisq",parm1 = 2,lower.tail = FALSE,sub=paste("VC:",VC_JB,"JB:",JB$statistic))
Dado de que el Estadistico de Prueba JB es mayor al Valor Critico (32.27 > 5.99), se rechaza la Hipotesis Nula. En otras palabras, los Residuales no tienen una distribucion normal.
Analizando el valor-p, este es menor al nivel de significancia del 5%, por lo que se llega a la misma decision de rechazar la Hipotesis Nula
Ho: ε~N (0, σ2ε)
(Hay evidencia de que la distribucion de los residuos poseen una distribucion normal)
Ho: ε≁N (0, σ2ε)
(Hay evidencia de que la distribucion de los residuos no poseen una distribucion normal)
library(nortest)
lillie.test(modelo_lineal$residuals)
##
## Lilliefors (Kolmogorov-Smirnov) normality test
##
## data: modelo_lineal$residuals
## D = 0.075439, p-value = 0.2496
matriz_X<- model.matrix(modelo_lineal)
#Calcular el Valor Critico
n<-nrow(matriz_X)
VC_KS<-((0.875897)/sqrt(n))
print(VC_KS)
## [1] 0.09337093
Con base al Valor-p (Valor-p > α) se concluye que no se rechaza la Hipotesis Nula. Segun esta prueba de normalidad existe evidencia de que la distribucion de los residuos es normal.
De igual forma, si analizamos el Estadistico D, este es menor al Valor Critico (0.075 < 0.093), por lo que se llega a la decision de no Rechazar la Hipotesis Nula
shapiro.test(modelo_lineal$residuals)->SW
print(SW)
##
## Shapiro-Wilk normality test
##
## data: modelo_lineal$residuals
## W = 0.94132, p-value = 0.0005937
#Calculamos el Valor Critico
VC_SW<-qnorm(p = 0.95)
print(VC_SW)
## [1] 1.644854
shadeDist(xshade = 0.9413, ,ddist = "dnorm",parm1 = 0,parm2 = 1, lower.tail = FALSE, sub=paste("SW:",SW,"VC:",VC_SW))
Analizando el estadistico de Prueba, El estadistico SW es menor al Valor Critico (0.9413 < 1.64), por lo que la Hipotesis Nula no se Rechaza.
Sin embargo, si analizamos el valor-p, este es menor al nivel de significancia del 5%, Lo que indica que Si se debe rechazar la Hipotesis Nula.
Por lo tanto, en esta prueba tomamos la condicion del valor-p y rechazamos la Hipotesis Nula, lo queindica que los residuales no poseen una distribucion normal