Leer datos

load("C:/Users/ejhar/Downloads/data_clave_C.RData")

Calcular los residuos del problema

A<-solve(t(X)%*%X)%*%t(X)
P<-X%*%A
N <- nrow(P)
Iden<-diag(x=1,N,N)
#Residuos E = (I-P)*Y
u_i<- (Iden-P)%*%RC
print(u_i)
##           [,1]
## 1   11.1690182
## 2   45.3802879
## 3   10.8115079
## 4   36.0948953
## 5   -5.3948428
## 6  -29.7892205
## 7   10.4113582
## 8   28.3623738
## 9   -0.6175071
## 10 -16.1409533
## 11  60.3169520
## 12  10.1916302
## 13 -22.1384846
## 14   1.2845246
## 15   9.3133562
## 16  13.6412303
## 17 -13.3522342
## 18 -44.4184021
## 19 -39.3093732
## 20  16.9882801
## 21   2.4027985
## 22 -19.3504810
## 23  49.7104735
## 24  17.2194237
## 25 -21.6693772
## 26  12.2514270
## 27 -20.5469787
## 28  20.5349116
## 29 -41.6616253
## 30 -15.1240412
## 31  -1.0237983
## 32 -12.6365861
## 33  27.2410493
## 34   9.2105422
## 35 -16.7450478
## 36   8.0408414
## 37 -21.5253573
## 38   8.2255349
## 39   7.5712667
## 40   5.0377632
## 41 -10.6897071
## 42   2.3337905
## 43 -23.9176759
## 44   8.0501842
## 45   1.3945409
## 46 -51.4521213
## 47  -5.6861472

Pruebas de normalidad

Jarque Bera

library(normtest)
jb.norm.test(u_i)
## 
##  Jarque-Bera test for normality
## 
## data:  u_i
## JB = 0.22424, p-value = 0.8885
  • En caso de la prueba de Jarque-Bera para un nivel de significancia del 5% V.C. = 5.9915 la condicion de no rechazar de la \(H_o\) es que el estadistico JB < V.C., además también se puede evaluar por medio del p-value en la cual la condición de no rechazo es p > \(\alpha\)

JB(0.22424) < V.C.(5.9915) p (0.8885) > \(\alpha\)(0.05)

  • NO SE RECHAZA LA HIPOTESIS NULA POR LO QUE HAY EVIDENCIA QUE LOS RESIDUOS SIGUEN UNA DISTRIBUCION NORMAL

Kolmogorov Smirnov - Lilliefors

library(nortest)
lillie.test(u_i)
## 
##  Lilliefors (Kolmogorov-Smirnov) normality test
## 
## data:  u_i
## D = 0.092112, p-value = 0.4069
  • En caso de la prueba de Kolmogorov-Smirnov para un nivel de significancia del 5% y una muesta n=47 el V.C. = 0.1282 la condicion de no rechazar de la \(H_o\) es que el estadistico D < V.C., además también se puede evaluar por medio del p-value en la cual la condición de no rechazo es p-value > \(\alpha\)

D (0.092112) < V.C.(0.1282) p-value (0.4069) > \(\alpha\)(0.05)

  • NO SE RECHAZA LA HIPOTESIS NULA POR LO QUE HAY EVIDENCIA QUE LOS RESIDUOS SIGUEN UNA DISTRIBUCION NORMAL

Shapiro - Wilk

shapiro.test(u_i)
## 
##  Shapiro-Wilk normality test
## 
## data:  u_i
## W = 0.9792, p-value = 0.5594

En caso de la prueba de Shapiro-Wilk para un nivel de significanciadel 5% el V.C. = 1.644854 la condicion de no rechazar de la \(H_o\) es que el estadistico SW < V.C., además también se puede evaluar por medio del p-value en la cual la condición de no rechazo es p-value > \(\alpha\)

SW (0.9792) < V.C.(1.644854) p-value (0.5594) > \(\alpha\)(0.05)

  • NO SE RECHAZA LA HIPOTESIS NULA POR LO QUE HAY EVIDENCIA QUE LOS RESIDUOS SIGUEN UNA DISTRIBUCION NORMAL

Normalizar Sn y la version normalizada de X’X guardar

library(stargazer)
# Sn
options(scipen = 9999)
XX<- t(X)%*%X
Sn<-solve(diag(sqrt(diag(XX))))
stargazer(Sn,type = "text")
## 
## ==========================================
## 0.146   0     0     0     0     0     0   
## 0     0.001   0     0     0     0     0   
## 0       0   0.250   0     0     0     0   
## 0       0     0   0.001   0     0     0   
## 0       0     0     0   0.002   0     0   
## 0       0     0     0     0   0.002   0   
## 0       0     0     0     0     0   0.0003
## ------------------------------------------
#Xnormalizada
XXnorm<-(Sn%*%XX)%*%Sn
stargazer(XXnorm,type = "text",digits = 5)
## 
## =======================================================
## 1       0.99600 0.58346 0.99456 0.94506 0.94539 0.99747
## 0.99600    1    0.62354 0.98564 0.92651 0.92666 0.99246
## 0.58346 0.62354    1    0.52082 0.45248 0.45202 0.55281
## 0.99456 0.98564 0.52082    1    0.95637 0.95720 0.99620
## 0.94506 0.92651 0.45248 0.95637    1    0.99932 0.94549
## 0.94539 0.92666 0.45202 0.95720 0.99932    1    0.94546
## 0.99747 0.99246 0.55281 0.99620 0.94549 0.94546    1   
## -------------------------------------------------------

Calculo de los autovalores de XX normalizada

#autovalores de la matriz XXnorm -comando eigen()-
lambdas <- eigen(XXnorm,symmetric = TRUE)
stargazer(lambdas$values,type = "text")
## 
## =========================================
## 6.165 0.708 0.117 0.005 0.002 0.001 0.001
## -----------------------------------------
#El índice de condición es la división de la raiz cuadrada del max(lambdas$values) entre la raiz de min(lambdas$values)
K<-sqrt(max(lambdas$values)/min(lambdas$values))
print(K)
## [1] 102.7622
  • Para interpretar la severidad de colinealidad del modelo ver los siguientes supuestos k < 20 Existe una leve multicolinealidad 20 < k < 30 Existe una multicolinealidad moderada k >= 30 la multicolinealidad es severa
  • 102.7622 > 30, POR LO QUE SE CONCLUYE QUE EL MODELO PRESENTA UNA MULTICOLINEALIDAD SEVERA

Calcular los VIF’s

R_1 <- solve(R) #Inversa ded R
VIFs<-diag(R_1)
print(VIFs)
##       AGE         S        ED       EX0       EX1        LF 
##  1.891676  2.450538  2.973403 86.465660 89.709795  1.822490
  • Tradicionalmente un valor VIF>10 indicaría que el modelo de regresión lineal presenta un grado de multicolinealidad preocupante
  • POR LO QUE EX0 y EX1 SON CONSIDERADOS ALTAMENTE MULTICOLINEALES