library(wooldridge)
data(hprice1)
head(force(hprice1),n=5) #mostrar las primeras 5 observaciones
## 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)
modelo_lineal<-lm(formula = price~lotsize+sqrft+bdrms,data = hprice1)
stargazer(modelo_lineal, type = "html",title = "Modelo de Regresion",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 |
Indice de Condicion
Usando la libreria mctest
library(mctest)
eigprop(mod = modelo_lineal)
##
## Call:
## eigprop(mod = modelo_lineal)
##
## Eigenvalues CI (Intercept) lotsize sqrft bdrms
## 1 3.4816 1.0000 0.0037 0.0278 0.0042 0.0029
## 2 0.4552 2.7656 0.0068 0.9671 0.0061 0.0051
## 3 0.0385 9.5082 0.4726 0.0051 0.8161 0.0169
## 4 0.0247 11.8678 0.5170 0.0000 0.1737 0.9750
##
## ===============================
## Row 2==> lotsize, proportion 0.967080 >= 0.50
## Row 3==> sqrft, proportion 0.816079 >= 0.50
## Row 4==> bdrms, proportion 0.975026 >= 0.50
Como el indice de condicion es 11.8678, la multicolinealidad es leve, por lo que no se considera un problema para el modelo.
Prueba de Farrar-Glaubar
Rechazar H0 si χ2FG ≥ V.C., o si p ≤ α
options(scipen = 999999)
#Calcular la Matriz X
Mat_X<- model.matrix(modelo_lineal)
library(psych)
library(fastGraph)
FG_test<- cortest.bartlett(Mat_X[,-1])
print(FG_test)
## $chisq
## [1] 31.38122
##
## $p.value
## [1] 0.0000007065806
##
## $df
## [1] 3
#Calcular el Valor Critico
VC<- qchisq(p = 0.95,df = FG_test$df)
print(VC)
## [1] 7.814728
#GRaficamos el Estadistico de Prueba
shadeDist(xshade = FG_test$chisq,ddist = "dchisq",parm1 = FG_test$df,lower.tail = FALSE,sub=paste("VC:",VC,"FG:",FG_test$chisq))
El estadistico de prueba FG es mayor al Valor critico (31.38122 > 7.814), por lo tanto, se rechaza la Hipotesis Nula, existe evidencia de que hay presencia de multicolinealidad entre las variables explicativas del modelo.
#Usando la libreria car
library(car)
library(stargazer)
VI_var<-vif(modelo_lineal)
stargazer(VI_var, type = "html", title = "Factores Inflacionarios de la Varianza")
| lotsize | sqrft | bdrms |
| 1.037 | 1.419 | 1.397 |
#Usando la libreria mctest
library(mctest)
mc.plot(mod = modelo_lineal, vif = 2)
Los Factores inflacionarios de la Varianza son menores al doble de la varianza minima esperada, por lo que hay evidencia de una multicolinealidad leve