matriz_R = matrix(data = c(1,0.96,0.96,1),nrow = 2,
ncol = 2,byrow = TRUE)
print(matriz_R)
## [,1] [,2]
## [1,] 1.00 0.96
## [2,] 0.96 1.00
VIF_1=diag(solve(matriz_R))
print(VIF_1)
## [1] 12.7551 12.7551
options(scipen = 99999)
FG=40
m=5
n=60
det_R= exp(FG/-((n-1)-((2*m+5)/6)))
print(det_R)
## [1] 0.4926459
VIF_4=2.5
coef_cor= 1-(1/VIF_4)
print(coef_cor)
## [1] 0.6
KSresiduos=matrix(data = c(10,15, -10,-15, 4, -4),
nrow = 6,
ncol= 1)
print(KSresiduos)
## [,1]
## [1,] 10
## [2,] 15
## [3,] -10
## [4,] -15
## [5,] 4
## [6,] -4
# Prueba KS
library(nortest)
lillie.test(KSresiduos)
##
## Lilliefors (Kolmogorov-Smirnov) normality test
##
## data: KSresiduos
## D = 0.1374, p-value = 0.9763
m_6=5
gl_6=m_6*(m_6-1)/2
# VC
VC_6=qchisq(0.043,gl_6,lower.tail = FALSE)
print(VC_6)
## [1] 18.79093
JBresiduos=matrix(data = c(10, 15, -10,-15, 4, -4),
nrow = 6,
ncol= 1)
print(JBresiduos)
## [,1]
## [1,] 10
## [2,] 15
## [3,] -10
## [4,] -15
## [5,] 4
## [6,] -4
# Prueba JB
library(normtest)
jb.norm.test(JBresiduos)
##
## Jarque-Bera test for normality
##
## data: JBresiduos
## JB = 0.51072, p-value = 0.598
Tol=0.05
VIF_8=1/Tol
print(VIF_8)
## [1] 20
SWresiduos=matrix(data = c(10, 15, -10,-15, 4, -4),
nrow = 6,
ncol= 1)
print(SWresiduos)
## [,1]
## [1,] 10
## [2,] 15
## [3,] -10
## [4,] -15
## [5,] 4
## [6,] -4
# Prueba SW
shapiro.test(SWresiduos)
##
## Shapiro-Wilk normality test
##
## data: SWresiduos
## W = 0.96164, p-value = 0.8323
VIF_10<-2.5
tol_10<-1/VIF_10
print(tol_10)
## [1] 0.4
Estime el modelo de regresión lineal, correspondiente y verifique el supuesto de normalidad, usando todas las pruebas vistas en clase. Comente sus resultados.
Utilizando todas las herramientas vistas en clase, evalué la situación de colinealidad de los regresores del modelo. Comente sus resultados.
# Carga de datos
library(readxl)
ventas= read_excel("C:/Users/MAURA.DESKTOP-46RI5EA/Downloads/ventas_empresa.xlsx")
# Estimación del Modelo
library(stargazer)
modelo_ventas = lm(formula = V~C+P+M, data = ventas)
stargazer(modelo_ventas, tittle= "Modelo Ventas", type = "html")
| 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 |
| Modelo Ventas |
# Ajuste de Normalidad
library(fitdistrplus)
ajuste=fitdist(data = modelo_ventas$residuals, distr = "norm")
plot(ajuste)
# Prueba Jarque Bera
library(normtest)
jb.norm.test(modelo_ventas$residuals)
##
## Jarque-Bera test for normality
##
## data: modelo_ventas$residuals
## JB = 1.4004, p-value = 0.2795
# Prueba KS
library(nortest)
lillie.test(modelo_ventas$residuals)
##
## Lilliefors (Kolmogorov-Smirnov) normality test
##
## data: modelo_ventas$residuals
## D = 0.13659, p-value = 0.2935
# Prueba SW
shapiro.test(modelo_ventas$residuals)
##
## Shapiro-Wilk normality test
##
## data: modelo_ventas$residuals
## W = 0.95315, p-value = 0.3166
# W normalizado
W=0.95315
# Obteniendo miu
sigma=0.0038915*(log(24))^3-0.083751*(log(24))^2-0.31082*(log(24))-1.5861
# Obteniendo Desviación
desv= exp(0.0030302*(log(24))^2-0.082676*(log(24))-0.4803)
# Obteniendo Wn
Wn= (log(1-W)-sigma)/desv
print(Wn)
## [1] 0.4772707
# Matriz X
X1_mat= model.matrix(modelo_ventas)
# Índice de condición con librería Mctest
library(mctest)
source(file = "C:/Users/MAURA.DESKTOP-46RI5EA/Downloads/correccion_eigprop.R")
my_eigprop(mod = modelo_ventas)
##
## Call:
## my_eigprop(mod = modelo_ventas)
##
## Eigenvalues CI (Intercept) C P M
## 1 3.9869 1.0000 0.0007 0.0001 0.0003 0.0001
## 2 0.0095 20.4852 0.8776 0.0049 0.0877 0.0075
## 3 0.0028 37.8141 0.1183 0.1594 0.8478 0.0636
## 4 0.0008 71.1635 0.0034 0.8356 0.0642 0.9288
##
## ===============================
## Row 4==> C, proportion 0.835554 >= 0.50
## Row 3==> P, proportion 0.847805 >= 0.50
## Row 4==> M, proportion 0.928751 >= 0.50
# Prueba de FG
library(fastGraph)
m_FG = ncol(X1_mat[,-1])
n_FG = nrow (X1_mat)
det_R_1<-det(cor(X1_mat[,-1]))
chi_FG <- -(n-1-(2*m+5)/6)*log(det_R_1)
print(chi_FG)
## [1] 190.075
#VC
gl_1<- m*(m-1)/2
VC_1<- qchisq(0.05,gl_1,lower.tail = FALSE)
print(VC_1)
## [1] 18.30704
shadeDist(xshade = chi_FG, ddist = "dchisq", parm1 = gl_1, lower.tail = FALSE, sub=paste("VC:",
VC_1, "FG:",chi_FG))
# Factores inflacionarios de la varianza (VIFs)
library(car) # VIF con libreria Car
VIF_car_1 <- vif(modelo_ventas)
print(VIF_car_1)
## C P M
## 7.631451 3.838911 9.449210
library(mctest) # VIF con libreria Mctest
mc.plot(modelo_ventas,vif =2)
### Los 3 regresores inflan la varianza, como se muestra en el gráfico superando el límite de VIF=2
Estime el modelo de regresión lineal, correspondiente y verifique el supuesto de normalidad, usando todas las pruebas vistas en clase. Comente sus resultados.
Utilizando todas las herramientas vistas en clase, evalue la situación de colinealidad del modelo. Comente sus resultados
# Carga de datos
load("C:/Users/MAURA.DESKTOP-46RI5EA/Downloads/wage2.RData")
# Estimación del Modelo
library(stargazer)
modelo_escolaridad<-lm(formula = educ~sibs+meduc+feduc,data = wage2)
stargazer(modelo_escolaridad, tittle= "Modelo Escolaridad", type = "html")
| 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 |
| Modelo Escolaridad |
#Ajuste de normalidad
library(fitdistrplus)
ajuste_1<-fitdist(data = modelo_escolaridad$residuals, distr = "norm")
plot(ajuste_1)
options(scipen = 99999)
# Prueba Jarque Bera
library(normtest)
jb.norm.test(modelo_escolaridad$residuals)
##
## Jarque-Bera test for normality
##
## data: modelo_escolaridad$residuals
## JB = 35.655, p-value < 0.00000000000000022
options(scipen = 99999)
# Prueba Kolmogorov Smirnov-Lilliefors
library(nortest)
lillie.test(modelo_escolaridad$residuals)
##
## Lilliefors (Kolmogorov-Smirnov) normality test
##
## data: modelo_escolaridad$residuals
## D = 0.089992, p-value = 0.000000000000003394
# Prueba Shapiro Wilk
shapiro.test(modelo_escolaridad$residuals)
##
## Shapiro-Wilk normality test
##
## data: modelo_escolaridad$residuals
## W = 0.96692, p-value = 0.00000000001058
#Shapiro Wilk normalizado
W_1=0.96692
#Obteniendo miu
sigma_1= 0.0038915*(log(935))^3-0.083751*(log(935))^2-0.31082*(log(935))-1.5861
#Obteniendo la desviación
desv_1= exp(0.0030302*(log(935))^2-0.082676*(log(935))-0.4803)
#Obteniendo Wn
Wn_2= (log(1-W_1)-sigma_1)/desv_1
print(Wn_2)
## [1] 7.351479
options(scipen = 99999)
# Matriz X
library(stargazer)
X2_mat<- model.matrix(modelo_escolaridad)
# Índice de condición con librería Mctest
library(mctest)
source(file = "C:/Users/MAURA.DESKTOP-46RI5EA/Downloads/correccion_eigprop.R")
my_eigprop(mod = modelo_escolaridad)
##
## Call:
## my_eigprop(mod = modelo_escolaridad)
##
## Eigenvalues CI (Intercept) sibs meduc feduc
## 1 3.5576 1.0000 0.0033 0.0194 0.0031 0.0046
## 2 0.3756 3.0778 0.0015 0.7200 0.0107 0.0184
## 3 0.0417 9.2337 0.3235 0.1056 0.0813 0.8786
## 4 0.0251 11.9094 0.6717 0.1549 0.9049 0.0984
##
## ===============================
## Row 2==> sibs, proportion 0.720032 >= 0.50
## Row 4==> meduc, proportion 0.904919 >= 0.50
## Row 3==> feduc, proportion 0.878599 >= 0.50
# Prueba de FG
library(psych)
library(fastGraph)
FG_test_1=cortest.bartlett(X2_mat[,-1])
print(FG_test_1)
## $chisq
## [1] 358.3897
##
## $p.value
## [1] 0.0000000000000000000000000000000000000000000000000000000000000000000000000000227501
##
## $df
## [1] 3
VC_2 <- qchisq(0.05,FG_test_1$df, lower.tail =FALSE)
print(VC_2)
## [1] 7.814728
shadeDist(xshade = FG_test_1$chisq, ddist = "dchisq",
parm1 = FG_test_1$df, lower.tail = FALSE,
sub=paste("VC:",VC_2,"FG:",FG_test_1$chisq))
# Factores inflacionarios de la varianza (VIFs)
library(car)
VIF_car2 <- vif(modelo_escolaridad)
print(VIF_car2)
## sibs meduc feduc
## 1.098950 1.561254 1.506359
library(mctest)
mc.plot(modelo_escolaridad,vif =2)
Estime el modelo de regresión lineal, correspondiente y verifique el supuesto de normalidad, usando todas las pruebas vistas en clase. Comente sus resultados.
Utilizando todas las herramientas vistas en clase, evalue la situación de colinealidad del modelo. Comente sus resultados
# Carga de datos
load("C:/Users/MAURA.DESKTOP-46RI5EA/Downloads/LAWSCH85.RData")
# Estimación del Modelo
options(scipen = 9)
library(stargazer)
modelo_salario <- lm(lsalary~LSAT+GPA+llibvol+lcost+rank, data = LAWSCH85)
stargazer(modelo_salario, tittle= "Modelo de Salarios", type = "html")
| 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 |
| Modelo de Salarios |
#Ajuste de normalidad
library(fitdistrplus)
ajuste_2=fitdist(data = modelo_salario$residuals, distr = "norm")
plot(ajuste_2)
# Prueba Jarque Bera
library(normtest)
jb.norm.test(modelo_salario$residuals)
##
## Jarque-Bera test for normality
##
## data: modelo_salario$residuals
## JB = 0.36511, p-value = 0.8235
# Prueba Kolmogorov Smirnov-Lilliefors
library(nortest)
lillie.test(modelo_salario$residuals)
##
## Lilliefors (Kolmogorov-Smirnov) normality test
##
## data: modelo_salario$residuals
## D = 0.054571, p-value = 0.4123
# Prueba Shapiro Wilk
shapiro.test(modelo_salario$residuals)
##
## Shapiro-Wilk normality test
##
## data: modelo_salario$residuals
## W = 0.99282, p-value = 0.7235
#Shapiro Wilk normalizado
W_3<-0.99282
#Obteniendo miu
sigma_3<- 0.0038915*(log(156))^3-0.083751*(log(156))^2-0.31082*(log(156))-1.5861
#Obteniendo la desviación
desv_3<- exp(0.0030302*(log(156))^2-0.082676*(log(156))-0.4803)
#Obteniendo wn
Wn_3<- (log(1-W_3)-sigma_3)/desv_3
print(Wn_3)
## [1] -0.3320221
options(scipen = 99999)
# Matriz X
library(stargazer)
X3_mat<- model.matrix(modelo_salario)
# Índice de condición con librería Mctest
library(mctest)
source(file = "C:/Users/MAURA.DESKTOP-46RI5EA/Downloads/correccion_eigprop.R")
my_eigprop(mod = modelo_salario)
##
## Call:
## my_eigprop(mod = modelo_salario)
##
## Eigenvalues CI (Intercept) LSAT GPA llibvol lcost rank
## 1 5.7351 1.0000 0.0000 0.0000 0.0000 0.0001 0.0000 0.0021
## 2 0.2604 4.6930 0.0000 0.0000 0.0002 0.0004 0.0001 0.2884
## 3 0.0021 52.4800 0.0058 0.0030 0.0007 0.8411 0.1155 0.1357
## 4 0.0018 55.7648 0.0002 0.0010 0.3355 0.1095 0.1756 0.0161
## 5 0.0004 123.2068 0.4254 0.0588 0.4407 0.0423 0.6610 0.4700
## 6 0.0002 186.7153 0.5686 0.9371 0.2229 0.0066 0.0478 0.0877
##
## ===============================
## Row 6==> LSAT, proportion 0.937119 >= 0.50
## Row 3==> llibvol, proportion 0.841136 >= 0.50
## Row 5==> lcost, proportion 0.661004 >= 0.50
# Prueba de Farrar-Glaubar
library(psych) #FG con libreria Psych
library(fastGraph)
FG_test_3<-cortest.bartlett(X3_mat[,-1])
print(FG_test_3)
## $chisq
## [1] 391.509
##
## $p.value
## [1] 0.000000000000000000000000000000000000000000000000000000000000000000000000000006031929
##
## $df
## [1] 10
VC_3 <- qchisq(0.05,FG_test_3$df, lower.tail =FALSE)
print(VC_3)
## [1] 18.30704
shadeDist(xshade = FG_test_3$chisq, ddist = "dchisq",
parm1 = FG_test_3$df, lower.tail = FALSE,
sub=paste("vc:",VC_3,"FG:",FG_test_3$chisq))
### se rechaza Ho ya que se presenta un estadístico mayor que el VC, por lo que hay evidencia de multicolinealidad
# Factores inflacionarios de la varianza (VIFs)
library(car)
VIF_car_3 <- vif(modelo_salario)
print(VIF_car_3)
## LSAT GPA llibvol lcost rank
## 3.635214 3.369004 2.110802 1.573583 3.124106
library(mctest)
mc.plot(modelo_salario,vif =2)