Ejercicio 1: Para una empresa se ha estimado un modelo que relaciona las ventas de 200 empresas, con su gasto en tv, radio, periódicos y la interacción entre tv y periódicos Dicho modelo se encuentra en “modelo_ventas.RData”

  1. Calcule las matrices A, P, M
options(scipen = 999999)
load("~/Eco_trabajos/modelo_ventas.RData")
mat_x<-model.matrix(modelo_ventas)
# Matriz A
mat_A<-solve(t(mat_x)%*%mat_x)%*%t(mat_x)
# Matriz P
mat_P<-mat_x%*%mat_A
# Matriz M
mat_M<-diag(200)-mat_P
mat_A[1:4,1:4]
##                          1              2             3             4
## (Intercept) -0.01128647020  0.01410377973  0.0350639188  0.0004283381
## tv          -0.00006704103  0.00003094914 -0.0006120193 -0.0002120642
## periodico    0.00139818182 -0.00190724690 -0.0025468816  0.0002293243
## radio       -0.00058002134  0.00064866654 -0.0001093284 -0.0001899710
mat_P[1:4,1:4]
##            1          2          3          4
## 1 0.03181459 0.00370346 0.01758786 0.02250872
## 2 0.00370346 0.02460480 0.03447285 0.01212022
## 3 0.01758786 0.03447285 0.06766822 0.02641047
## 4 0.02250872 0.01212022 0.02641047 0.02031981
mat_M[1:4,1:4]
##             1           2           3           4
## 1  0.96818541 -0.00370346 -0.01758786 -0.02250872
## 2 -0.00370346  0.97539520 -0.03447285 -0.01212022
## 3 -0.01758786 -0.03447285  0.93233178 -0.02641047
## 4 -0.02250872 -0.01212022 -0.02641047  0.97968019
  1. Compruebe que los residuos en el objeto “modelo_ventas” son iguales al producto de M*y, donde “y” es la variable endógena en el modelo (“ventas”)
Residuos_estimados<-mat_M%*%modelo_ventas$model$ventas
Comparativo<-as.data.frame(cbind(Residuos_estimados,modelo_ventas$residuals))
names(Comparativo)<-c("Residuos_estimados","modelo_ventas$residual")
head(Comparativo,n=10)
##    Residuos_estimados modelo_ventas$residual
## 1          -15.933072             -15.933072
## 2           19.334106              19.334106
## 3           38.016384              38.016384
## 4          -15.426419             -15.426419
## 5            5.158145               5.158145
## 6           80.216933              80.216933
## 7          -16.348831             -16.348831
## 8          -22.894376             -22.894376
## 9          -34.402629             -34.402629
## 10          46.088670              46.088670
  1. Muestre que los autovalores de x’x son positivos (use el comando eigen)
eigen(t(mat_x)%*%mat_x)$values
## [1] 311421698.6388     70252.5341     40973.4590      3714.3627        12.7735

Ejercicio 2: Para una empresa se desea estimar un modelo que relaciona el tiempo (en minutos) en acomodar cajas en una bodega, en función de la distancia (en metros) y del número de cajas nota: las cajas son todas iguales. Los datos se encuentra en “datos_cajas.RData”

  1. Estime el modelo propuesto, y colóquele el nombre de “modelo_cajas”
options(scipen = 999999)
load("~/Eco_trabajos/datos_cajas.RData")
modelo_cajas<-lm(formula = Tiempo~Distancia+N_cajas,data = datos_cajas)
summary(modelo_cajas)
## 
## Call:
## lm(formula = Tiempo ~ Distancia + N_cajas, data = datos_cajas)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -9.2716 -0.5405  0.5212  1.4051  2.9381 
## 
## Coefficients:
##             Estimate Std. Error t value  Pr(>|t|)    
## (Intercept)   2.3112     5.8573   0.395   0.70007    
## Distancia     0.4559     0.1468   3.107   0.00908 ** 
## N_cajas       0.8772     0.1530   5.732 0.0000943 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3.141 on 12 degrees of freedom
## Multiple R-squared:  0.7368, Adjusted R-squared:  0.6929 
## F-statistic:  16.8 on 2 and 12 DF,  p-value: 0.0003325
  1. Calcule las matrices A, P, M
mat_x<-model.matrix(modelo_cajas)
# Matriz A
mat_A<-solve(t(mat_x)%*%mat_x)%*%t(mat_x)
# Matriz P
mat_P<-mat_x%*%mat_A
# _Matriz M
mat_M<-diag(15)-mat_P
mat_A
##                        1            2            3            4            5
## (Intercept)  0.459747079  0.505626389 -0.317731768  0.707001469  0.053149816
## Distancia   -0.003015297 -0.009318829  0.018819615 -0.019989342 -0.006641453
## N_cajas     -0.017147338 -0.009890695 -0.007919488 -0.004479623  0.011082085
##                        6            7            8             9          10
## (Intercept) -0.166576988  0.633594572 -0.125532551  0.1260628274 -0.90735239
## Distancia    0.006550474 -0.009903692  0.009409808  0.0003379213  0.02334256
## N_cajas      0.002768355 -0.016090251 -0.003959744 -0.0038254420  0.01780152
##                       11           12           13            14          15
## (Intercept)  0.277217608  0.368482344  0.487274665 -0.3674581822 -0.73350489
## Distancia   -0.011931220 -0.007473259 -0.006797416  0.0001559637  0.01645417
## N_cajas      0.006862401 -0.005142468 -0.012793352  0.0238754370  0.01885861
mat_P
##              1            2           3            4           5           6
## 1   0.19781478  0.127154573  0.16766180  0.062524965 -0.03527291 0.057620774
## 2   0.12715457  0.124295239  0.03396629  0.140073563  0.05334477 0.038710181
## 3   0.16766180  0.033966286  0.35585795 -0.137368460 -0.10168744 0.123125512
## 4   0.06252497  0.140073563 -0.13736846  0.257600846  0.15524536 0.006698639
## 5  -0.03527291  0.053344771 -0.10168744  0.155245361  0.18408997 0.046742309
## 6   0.05762077  0.038710181  0.12312551  0.006698639  0.04674231 0.086318088
## 7   0.17558129  0.144648497  0.07654437  0.133523089  0.01345706 0.036955589
## 8   0.11716423  0.050316476  0.21126231 -0.035350897 -0.01751039 0.094896089
## 9   0.09794605  0.077129229  0.10132526  0.055636570  0.03786105 0.067680430
## 10 -0.02906036 -0.056765574  0.20436525 -0.131155907  0.05122193 0.136694350
## 11 -0.01209498  0.081873124 -0.13140718  0.199703669  0.18629079 0.030873007
## 12  0.09285990  0.104513848  0.01812731  0.131114317  0.07550894 0.044246890
## 13  0.15541865  0.125438973  0.08744449  0.109054124  0.01789770 0.046274418
## 14 -0.12402490 -0.005427535 -0.12246527  0.112857904  0.23285894 0.067134558
## 15 -0.05129385 -0.039271650  0.11324781 -0.060157783  0.09995191 0.116029165
##              7           8          9          10          11           12
## 1   0.17558129  0.11716423 0.09794605 -0.02906036 -0.01209498  0.092859897
## 2   0.14464850  0.05031648 0.07712923 -0.05676557  0.08187312  0.104513848
## 3   0.07654437  0.21126231 0.10132526  0.20436525 -0.13140718  0.018127310
## 4   0.13352309 -0.03535090 0.05563657 -0.13115591  0.19970367  0.131114317
## 5   0.01345706 -0.01751039 0.03786105  0.05122193  0.18629079  0.075508940
## 6   0.03695559  0.09489609 0.06768043  0.13669435  0.03087301  0.044246890
## 7   0.18301556  0.07160552 0.08894348 -0.08682757  0.04935470  0.112467995
## 8   0.07160552  0.13896449 0.08399596  0.13551596 -0.03237026  0.042396988
## 9   0.08894348  0.08399596 0.07465547  0.05440619  0.04101064  0.069478345
## 10 -0.08682757  0.13551596 0.05440619  0.34795579 -0.01326471 -0.021162536
## 11  0.04935470 -0.03237026 0.04101064 -0.01326471  0.20329083  0.095597926
## 12  0.11246799  0.04239699 0.06947834 -0.02116254  0.09559793  0.094228911
## 13  0.15702161  0.07705558 0.08545596 -0.04568349  0.04428588  0.099852268
## 14 -0.07689788 -0.02789930 0.01907176  0.16357209  0.20867158  0.042323339
## 15 -0.07939330  0.08995724 0.04540362  0.29018859  0.04818497 -0.001554438
##             13           14           15
## 1   0.15541865 -0.124024902 -0.051293849
## 2   0.12543897 -0.005427535 -0.039271650
## 3   0.08744449 -0.122465266  0.113247813
## 4   0.10905412  0.112857904 -0.060157783
## 5   0.01789770  0.232858944  0.099951911
## 6   0.04627442  0.067134558  0.116029165
## 7   0.15702161 -0.076897883 -0.079393301
## 8   0.07705558 -0.027899299  0.089957240
## 9   0.08545596  0.019071756  0.045403621
## 10 -0.04568349  0.163572088  0.290188586
## 11  0.04428588  0.208671580  0.048184973
## 12  0.09985227  0.042323339 -0.001554438
## 13  0.13743085 -0.052866482 -0.044080529
## 14 -0.05286648  0.352392093  0.210699107
## 15 -0.04408053  0.210699107  0.262089133
mat_M
##              1            2           3            4           5            6
## 1   0.80218522 -0.127154573 -0.16766180 -0.062524965  0.03527291 -0.057620774
## 2  -0.12715457  0.875704761 -0.03396629 -0.140073563 -0.05334477 -0.038710181
## 3  -0.16766180 -0.033966286  0.64414205  0.137368460  0.10168744 -0.123125512
## 4  -0.06252497 -0.140073563  0.13736846  0.742399154 -0.15524536 -0.006698639
## 5   0.03527291 -0.053344771  0.10168744 -0.155245361  0.81591003 -0.046742309
## 6  -0.05762077 -0.038710181 -0.12312551 -0.006698639 -0.04674231  0.913681912
## 7  -0.17558129 -0.144648497 -0.07654437 -0.133523089 -0.01345706 -0.036955589
## 8  -0.11716423 -0.050316476 -0.21126231  0.035350897  0.01751039 -0.094896089
## 9  -0.09794605 -0.077129229 -0.10132526 -0.055636570 -0.03786105 -0.067680430
## 10  0.02906036  0.056765574 -0.20436525  0.131155907 -0.05122193 -0.136694350
## 11  0.01209498 -0.081873124  0.13140718 -0.199703669 -0.18629079 -0.030873007
## 12 -0.09285990 -0.104513848 -0.01812731 -0.131114317 -0.07550894 -0.044246890
## 13 -0.15541865 -0.125438973 -0.08744449 -0.109054124 -0.01789770 -0.046274418
## 14  0.12402490  0.005427535  0.12246527 -0.112857904 -0.23285894 -0.067134558
## 15  0.05129385  0.039271650 -0.11324781  0.060157783 -0.09995191 -0.116029165
##              7           8           9          10          11           12
## 1  -0.17558129 -0.11716423 -0.09794605  0.02906036  0.01209498 -0.092859897
## 2  -0.14464850 -0.05031648 -0.07712923  0.05676557 -0.08187312 -0.104513848
## 3  -0.07654437 -0.21126231 -0.10132526 -0.20436525  0.13140718 -0.018127310
## 4  -0.13352309  0.03535090 -0.05563657  0.13115591 -0.19970367 -0.131114317
## 5  -0.01345706  0.01751039 -0.03786105 -0.05122193 -0.18629079 -0.075508940
## 6  -0.03695559 -0.09489609 -0.06768043 -0.13669435 -0.03087301 -0.044246890
## 7   0.81698444 -0.07160552 -0.08894348  0.08682757 -0.04935470 -0.112467995
## 8  -0.07160552  0.86103551 -0.08399596 -0.13551596  0.03237026 -0.042396988
## 9  -0.08894348 -0.08399596  0.92534453 -0.05440619 -0.04101064 -0.069478345
## 10  0.08682757 -0.13551596 -0.05440619  0.65204421  0.01326471  0.021162536
## 11 -0.04935470  0.03237026 -0.04101064  0.01326471  0.79670917 -0.095597926
## 12 -0.11246799 -0.04239699 -0.06947834  0.02116254 -0.09559793  0.905771089
## 13 -0.15702161 -0.07705558 -0.08545596  0.04568349 -0.04428588 -0.099852268
## 14  0.07689788  0.02789930 -0.01907176 -0.16357209 -0.20867158 -0.042323339
## 15  0.07939330 -0.08995724 -0.04540362 -0.29018859 -0.04818497  0.001554438
##             13           14           15
## 1  -0.15541865  0.124024902  0.051293849
## 2  -0.12543897  0.005427535  0.039271650
## 3  -0.08744449  0.122465266 -0.113247813
## 4  -0.10905412 -0.112857904  0.060157783
## 5  -0.01789770 -0.232858944 -0.099951911
## 6  -0.04627442 -0.067134558 -0.116029165
## 7  -0.15702161  0.076897883  0.079393301
## 8  -0.07705558  0.027899299 -0.089957240
## 9  -0.08545596 -0.019071756 -0.045403621
## 10  0.04568349 -0.163572088 -0.290188586
## 11 -0.04428588 -0.208671580 -0.048184973
## 12 -0.09985227 -0.042323339  0.001554438
## 13  0.86256915  0.052866482  0.044080529
## 14  0.05286648  0.647607907 -0.210699107
## 15  0.04408053 -0.210699107  0.737910867
  1. Compruebe que los residuos en el objeto “modelo_ventas” son iguales al producto de M*y, donde “y” es la variable endógena en el modelo (“Tiempo”)
Residuos_estimados<-mat_M%*%modelo_cajas$model$Tiempo
Comparativo<-as.data.frame(cbind(Residuos_estimados,modelo_cajas$residuals))
names(Comparativo)<-c("Residusos_estimado","Modelo_cajas$residuals")
head(Comparativo,n=10)
##    Residusos_estimado Modelo_cajas$residuals
## 1          -0.7608713             -0.7608713
## 2           0.1327095              0.1327095
## 3          -0.3200790             -0.3200790
## 4           2.9381318              2.9381318
## 5          -9.2715743             -9.2715743
## 6           0.7655710              0.7655710
## 7           1.3084025              1.3084025
## 8          -2.0933728             -2.0933728
## 9           1.4318218              1.4318218
## 10          0.5212280              0.5212280
  1. Muestre que los autovalores de x’x son positivos (use el comando eigen)
options(scipen = 999999)
eigen(t(mat_x)%*%mat_x)$values
## [1] 16976.7781334   709.9345923     0.2872743

Ejercicio 3: Para los EEUU se ha estimado un modelo que relaciona el “número de crímenes” en un estado con el “Nivel de pobreza” y la cantidad de solteros en el mismo. Dicho modelo se encuentra en “modelo_estimado.RData”

  1. Calcule las matrices A, P, M
options(scipen = 999999)
load("~/Eco_trabajos/modelo_estimado.RData")
mat_x<-model.matrix(modelo_estimado_1)
mat_A<-solve(t(mat_x)%*%mat_x)%*%t(mat_x)
mat_P<-mat_x%*%mat_A
mat_M<-diag(51)-mat_P
mat_A[,1:4]
##                       1            2            3            4
## (Intercept) -0.12023796  0.007496216  0.043732382 -0.019624196
## poverty     -0.01182361  0.003994776  0.008825494  0.000303668
## single       0.02723384 -0.003960021 -0.013241432  0.003081729
mat_P[1:4,1:4]
##             1           2           3          4
## 1  0.16161108 -0.01277963 -0.06530809 0.02720791
## 2 -0.01277963  0.03146508  0.04501952 0.02109951
## 3 -0.06530809  0.04501952  0.07855895 0.01942366
## 4  0.02720791  0.02109951  0.01942366 0.02234121
mat_M[1:4,1:4]
##             1           2           3           4
## 1  0.83838892  0.01277963  0.06530809 -0.02720791
## 2  0.01277963  0.96853492 -0.04501952 -0.02109951
## 3  0.06530809 -0.04501952  0.92144105 -0.01942366
## 4 -0.02720791 -0.02109951 -0.01942366  0.97765879
  1. Compruebe que los residuos en el objeto “modelo_estimado” son iguales al producto de M*y, donde “y” es la variable endógena en el modelo (“crime”)
Residuos_estimados<-mat_M%*%modelo_estimado_1$model$crime
Comparativo<-as.data.frame(cbind(Residuos_estimados,modelo_estimado_1$residuals))
names(Comparativo)<-c("Residuos_estimados","modelo_estimado$residuals")
head(Comparativo,n=10)
##    Residuos_estimados modelo_estimado$residuals
## 1          -311.70552                -311.70552
## 2           116.80291                 116.80291
## 3            45.25394                  45.25394
## 4           -34.44604                 -34.44604
## 5           243.00035                 243.00035
## 6          -145.11556                -145.11556
## 7            86.13208                  86.13208
## 8            88.30923                  88.30923
## 9           689.82331                 689.82331
## 10         -163.28540                -163.28540
  1. Muestre que los autovalores de x’x son positivos (use el comando eigen)
eigen(t(mat_x)%*%mat_x)$values
## [1] 17956.580914   279.157317     1.681762

Ejercicio 4: Dentro del archivo “Investiment_Equation.xlsx” se encuentran datos para estimar una función de inversión, para un país, y contiene las siguientes variables: InvReal=Inversión Real en millones de USS, Trend=tendencia, Inflation=inflación, PNBr=Producto Nacional Bruto Real en USS, Interest=Tasa de interés Se solicita: a) Estima la ecuación de inversión, presenta sus resultados en formato APA.

options(scipen = 999999)
library(stargazer)
library(readxl)
Investiment_Equation <- read_excel("C:/Users/IRMA/Desktop/C-I-2021/Econometria/Investiment_Equation.xlsx")
funcion_Inversion<-lm(InvReal~Trend+Inflation+PNBr+Interest,data = Investiment_Equation)
stargazer(funcion_Inversion,title = "Ecuación de Inversión",type = "html",digits = 8)
Ecuación de Inversión
Dependent variable:
InvReal
Trend -0.01637845***
(0.00194114)
Inflation 0.00002291
(0.00133035)
PNBr 0.66454700***
(0.05411848)
Interest -0.24032170*
(0.12033660)
Constant -0.50335230***
(0.05423952)
Observations 15
R2 0.97299900
Adjusted R2 0.96219860
Residual Std. Error 0.00662875 (df = 10)
F Statistic 90.08923000*** (df = 4; 10)
Note: p<0.1; p<0.05; p<0.01
  1. Calcule los residuos a través de la matriz M
mat_x<-model.matrix(funcion_Inversion)
mat_M<-diag(15)-mat_x%*%solve(t(mat_x)%*%mat_x)%*%t(mat_x)
# Residuos
mat_M%*%funcion_Inversion$model$InvReal
##             [,1]
## 1  -0.0100602233
## 2  -0.0009290882
## 3   0.0029656679
## 4   0.0078576839
## 5   0.0028109133
## 6   0.0006259732
## 7   0.0075909286
## 8  -0.0055352778
## 9  -0.0037254127
## 10  0.0006953129
## 11  0.0019904770
## 12 -0.0001288433
## 13 -0.0101976729
## 14  0.0068712384
## 15 -0.0008316770
  1. Calcule un intervalo de confianza del 93% para el impacto del PNBr en la Inversión, e interprételo.
confint(funcion_Inversion,parm = "PNBr",level = 0.93 )
##         3.5 %   96.5 %
## PNBr 0.554777 0.774317

Interpretación: El 93% de la estimación de la función de inversión por cada $ 1 que aumente el PNBrla inversión aumentará entre 0.55 y 0.77 USS.

Ejercicio 5: Dentro del archivo “consumption_equation.RData” se encuentran objetos relacionados a una función de consumo, que se construyó usando las variables: C=Consumo en millones de US$, Yd=Ingreso disponible, W=Riqueza, I=Tasa de interés

  1. Calcule los residuos del modelo.
options(scipen = 999999)
load("C:/Users/IRMA/Desktop/C-I-2021/Econometria/consumption_equation.RData")
Residuos_Consumo<-(diag(54)-P)%*%C
head(Residuos_Consumo,n=10)
##          [,1]
## 1   -5.859103
## 2    2.605057
## 3   45.765735
## 4   31.102448
## 5  -21.037889
## 6    7.008120
## 7   17.859663
## 8   10.705631
## 9   22.002328
## 10  -2.689665
  1. Calcule la varianza del error del modelo.
Var_error<-(t(Residuos_Consumo)%*%Residuos_Consumo/(54-4))[1,1]
  1. Obtenga la matriz de Var-Cov del modelo.
VarCovar<-Var_error*solve(XX)
VarCovar
##               (Intercept)             Yd               W             I
## (Intercept) 164.522304918 -0.09333539523  0.009670913575 10.5186890800
## Yd           -0.093335395  0.00018911268 -0.000032769561 -0.0072901023
## W             0.009670914 -0.00003276956  0.000006165749  0.0004193421
## I            10.518689080 -0.00729010228  0.000419342092  5.3203789879
  1. Obtenga las estimaciones del Consumo, del modelo propuesto.
Consumo_estimado<-P%*%C
head(Consumo_estimado,n=10)
##         [,1]
## 1   982.2591
## 2   995.4949
## 3   979.5343
## 4  1059.7976
## 5  1128.1379
## 6  1135.3919
## 7  1179.3403
## 8  1211.1944
## 9  1288.3977
## 10 1351.4897

Ejercicio 6: Dentro del archivo “datos_ventas.RData” se encuebtra los datos para estimar una función de ventas, para una empresa, y contiene las siguientes variables: ventas=Ventas en millones de UsS, tv=gasto en publicidad en TV en millones de USS, radio=gasto en publicidad en radio en millones de USS, periodico= gasto en publicidad en periodicos en millones de USS, se solicita:

  1. Estime la ecuaciónde ventas, presenta sus resultados en formato APA.
library(stargazer)
options(scipen = 999999)
load("C:/Users/IRMA/Desktop/C-I-2021/Econometria/datos_ventas.RData")
modelo_ventas<-lm(formula = ventas~tv+radio+periodico,data = datos_ventas)
stargazer(modelo_ventas,title = "Ecuación de ventas", type = "html",digits = 8)
Ecuación de ventas
Dependent variable:
ventas
tv 0.04503377
(0.11795900)
radio -3.44959300***
(0.20612340)
periodico 18.48504000***
(0.56342000)
Constant -33.28854000***
(7.17224500)
Observations 200
R2 0.84666810
Adjusted R2 0.84432120
Residual Std. Error 33.87478000 (df = 196)
F Statistic 360.75750000*** (df = 3; 196)
Note: p<0.1; p<0.05; p<0.01