Abstract
This is an undergrad student level exercise for class use. We analyse data on Barium market, from 1978m02 to 1988m12.This work is licensed under the Creative Commons Attribution-ShareAlike 4.0 International License. To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/4.0/ or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA.
License: CC BY-SA 4.0
Sugestão de citação: FIGUEIREDO, Adriano Marcos Rodrigues. Econometria: exemplos 10.5 e 10.11 do Wooldridge (2006, p.325 e 337). Campo Grande-MS,Brasil: RStudio/Rpubs, 2020. Disponível em http://rpubs.com/amrofi/barium_dummy_sazonal.
Wooldridge Source: C.M. Krupp and P.S. Pollard (1999), Market Responses to Antidumpting Laws: Some Evidence from the U.S. Chemical Industry, Canadian Journal of Economics 29, 199-227. They are monthly data covering February 1978 through December 1988.
A data.frame with 131 observations on 31 variables:
chnimp: Chinese imports, bar. chl.
bchlimp: total imports bar. chl.
befile6: =1 for all 6 mos before filing
affile6: =1 for all 6 mos after filing
afdec6: =1 for all 6 mos after decision
befile12: =1 all 12 mos before filing
affile12: =1 all 12 mos after filing
afdec12: =1 all 12 mos after decision
chempi: chemical production index
gas: gasoline production
rtwex: exchange rate index
spr: =1 for spring months
sum: =1 for summer months
fall: =1 for fall months
lchnimp: log(chnimp)
lgas: log(gas)
lrtwex: log(rtwex)
lchempi: log(chempi)
t: time trend
feb: =1 if month is feb
mar: =1 if month is march
apr:
may:
jun:
jul:
aug:
sep:
oct:
nov:
dec:
percchn: percent imports from china
Ver também https://justinmshea.github.io/wooldridge/articles/Introductory-Econometrics-Examples.html e http://www.urfie.net/downloads10.html.
> library(stargazer);library(wooldridge)
> data(barium, package='wooldridge')
> dados=barium
> attach(dados)
Vamos ver como está a tabela importada:
> library(knitr)
> kable(dados[,1:5],caption="Dados do exemplo")
chnimp | bchlimp | befile6 | affile6 | afdec6 |
---|---|---|---|---|
220.4620 | 9578.376 | 0 | 0 | 0 |
94.7980 | 11219.480 | 0 | 0 | 0 |
219.3575 | 9719.900 | 0 | 0 | 0 |
317.4215 | 12920.950 | 0 | 0 | 0 |
114.6390 | 9790.446 | 0 | 0 | 0 |
129.5240 | 11020.470 | 0 | 0 | 0 |
110.0920 | 8302.168 | 0 | 0 | 0 |
39.6830 | 9583.325 | 0 | 0 | 0 |
262.8230 | 9880.729 | 0 | 0 | 0 |
173.9980 | 9003.923 | 0 | 0 | 0 |
548.9455 | 10153.390 | 0 | 0 | 0 |
433.9755 | 10527.060 | 0 | 0 | 0 |
213.7855 | 9238.292 | 0 | 0 | 0 |
788.6440 | 11740.390 | 0 | 0 | 0 |
287.0395 | 13699.070 | 0 | 0 | 0 |
278.9545 | 17716.330 | 0 | 0 | 0 |
429.8970 | 15868.760 | 0 | 0 | 0 |
344.8820 | 15512.320 | 0 | 0 | 0 |
538.9150 | 13831.560 | 0 | 0 | 0 |
535.7180 | 13669.760 | 0 | 0 | 0 |
445.3290 | 16691.211 | 0 | 0 | 0 |
649.2550 | 16617.330 | 0 | 0 | 0 |
639.3350 | 15912.760 | 0 | 0 | 0 |
209.4370 | 9401.297 | 0 | 0 | 0 |
512.5915 | 9195.309 | 0 | 0 | 0 |
605.3425 | 11727.520 | 0 | 0 | 0 |
144.2360 | 20584.260 | 0 | 0 | 0 |
405.5360 | 8929.146 | 0 | 0 | 0 |
621.1075 | 10912.110 | 0 | 0 | 0 |
893.7185 | 13581.910 | 0 | 0 | 0 |
140.2300 | 9218.409 | 0 | 0 | 0 |
243.4765 | 20751.770 | 0 | 0 | 0 |
330.5750 | 12935.290 | 0 | 0 | 0 |
46.5860 | 26984.199 | 0 | 0 | 0 |
215.1960 | 18886.381 | 0 | 0 | 0 |
214.8385 | 25679.510 | 0 | 0 | 0 |
238.2085 | 15502.940 | 0 | 0 | 0 |
265.6545 | 18247.141 | 0 | 0 | 0 |
315.2515 | 12060.010 | 0 | 0 | 0 |
426.5905 | 17777.609 | 0 | 0 | 0 |
124.7860 | 14406.150 | 0 | 0 | 0 |
387.8990 | 20570.359 | 0 | 0 | 0 |
400.5400 | 14210.780 | 0 | 0 | 0 |
876.8340 | 15190.780 | 0 | 0 | 0 |
535.9930 | 14593.670 | 0 | 0 | 0 |
815.9555 | 14044.220 | 0 | 0 | 0 |
771.8130 | 10431.430 | 0 | 0 | 0 |
352.8730 | 13228.840 | 0 | 0 | 0 |
431.9340 | 12801.710 | 0 | 0 | 0 |
1211.4520 | 16403.340 | 0 | 0 | 0 |
575.9175 | 13591.700 | 0 | 0 | 0 |
1491.6219 | 16239.280 | 0 | 0 | 0 |
380.2920 | 20010.461 | 0 | 0 | 0 |
391.5965 | 16873.131 | 0 | 0 | 0 |
505.5120 | 15379.570 | 0 | 0 | 0 |
341.0220 | 10551.650 | 0 | 0 | 0 |
372.5765 | 20755.381 | 0 | 0 | 0 |
483.3590 | 18066.199 | 0 | 0 | 0 |
224.0470 | 17886.760 | 0 | 0 | 0 |
532.3940 | 19134.020 | 0 | 0 | 0 |
239.1405 | 17455.141 | 0 | 0 | 0 |
689.4535 | 18215.721 | 0 | 0 | 0 |
318.0120 | 20764.830 | 1 | 0 | 0 |
1048.0360 | 28414.789 | 1 | 0 | 0 |
945.7295 | 18819.391 | 1 | 0 | 0 |
295.3720 | 11737.220 | 1 | 0 | 0 |
319.4580 | 12520.280 | 1 | 0 | 0 |
855.1370 | 16988.230 | 1 | 0 | 0 |
671.8070 | 15835.780 | 0 | 0 | 0 |
657.9315 | 17282.949 | 0 | 1 | 0 |
847.9595 | 26960.510 | 0 | 1 | 0 |
849.8735 | 25137.689 | 0 | 1 | 0 |
852.9305 | 19807.490 | 0 | 1 | 0 |
435.8370 | 32134.600 | 0 | 1 | 0 |
204.7075 | 22954.551 | 0 | 1 | 0 |
241.5675 | 24438.789 | 0 | 0 | 0 |
244.1380 | 19057.439 | 0 | 0 | 0 |
656.4015 | 26784.340 | 0 | 0 | 0 |
588.0975 | 37244.379 | 0 | 0 | 0 |
1128.4440 | 28129.359 | 0 | 0 | 0 |
1328.9670 | 37253.469 | 0 | 0 | 0 |
227.0635 | 18289.359 | 0 | 0 | 1 |
583.2610 | 14795.910 | 0 | 0 | 1 |
499.8935 | 25700.260 | 0 | 0 | 1 |
165.3460 | 25240.311 | 0 | 0 | 1 |
1057.9720 | 24854.939 | 0 | 0 | 1 |
465.8225 | 24119.289 | 0 | 0 | 1 |
349.4040 | 27244.980 | 0 | 0 | 0 |
466.8240 | 30912.420 | 0 | 0 | 0 |
717.0470 | 23173.529 | 0 | 0 | 0 |
826.7580 | 29031.439 | 0 | 0 | 0 |
1571.7360 | 19400.510 | 0 | 0 | 0 |
542.9925 | 29887.711 | 0 | 0 | 0 |
670.7935 | 20670.631 | 0 | 0 | 0 |
430.2755 | 34375.250 | 0 | 0 | 0 |
524.8625 | 19555.820 | 0 | 0 | 0 |
317.7500 | 27362.230 | 0 | 0 | 0 |
442.8195 | 31952.500 | 0 | 0 | 0 |
322.6325 | 19578.160 | 0 | 0 | 0 |
742.0795 | 26605.789 | 0 | 0 | 0 |
665.3660 | 20034.420 | 0 | 0 | 0 |
737.2670 | 33408.488 | 0 | 0 | 0 |
1065.2111 | 20967.311 | 0 | 0 | 0 |
547.3285 | 26526.840 | 0 | 0 | 0 |
1258.4070 | 28304.020 | 0 | 0 | 0 |
976.5165 | 17168.150 | 0 | 0 | 0 |
1192.6840 | 12874.300 | 0 | 0 | 0 |
1047.2390 | 16153.360 | 0 | 0 | 0 |
944.7875 | 15638.680 | 0 | 0 | 0 |
840.0295 | 18391.830 | 0 | 0 | 0 |
578.9175 | 18786.789 | 0 | 0 | 0 |
828.1195 | 17661.711 | 0 | 0 | 0 |
1010.0570 | 17623.770 | 0 | 0 | 0 |
1546.4830 | 18482.400 | 0 | 0 | 0 |
1160.1580 | 21132.420 | 0 | 0 | 0 |
862.6800 | 16421.520 | 0 | 0 | 0 |
692.2970 | 16128.660 | 0 | 0 | 0 |
451.3840 | 14769.440 | 0 | 0 | 0 |
766.4015 | 34192.180 | 0 | 0 | 0 |
1794.5160 | 17537.230 | 0 | 0 | 0 |
972.8010 | 25518.910 | 0 | 0 | 0 |
738.5085 | 36649.191 | 0 | 0 | 0 |
786.1805 | 18668.000 | 0 | 0 | 0 |
849.0650 | 19710.660 | 0 | 0 | 0 |
895.4205 | 38521.531 | 0 | 0 | 0 |
814.3615 | 19679.381 | 0 | 0 | 0 |
589.4220 | 31686.859 | 0 | 0 | 0 |
529.7335 | 16370.340 | 0 | 0 | 0 |
968.0375 | 15653.960 | 0 | 0 | 0 |
794.0600 | 45716.609 | 0 | 0 | 0 |
1087.8060 | 29580.500 | 0 | 0 | 0 |
Estimando o modelo linear de regressao multipla fazendo conforme a expressão do enunciado.
Fazendo as regressoes com uso de logaritmos.
> mod1 <- lm(log(chnimp)~log(chempi)+log(gas)+log(rtwex)+
+ befile6+affile6+afdec6, data=dados )
> #summary(mod1)
> plot(chnimp)
Vamos utilizar o pacote stargazer para organizar as saídas de resultados. Se a saída fosse apenas pelo comando summary, sairia da forma:
> summary(mod1)
Call:
lm(formula = log(chnimp) ~ log(chempi) + log(gas) + log(rtwex) +
befile6 + affile6 + afdec6, data = dados)
Residuals:
Min 1Q Median 3Q Max
-2.03356 -0.39080 0.03048 0.40248 1.51720
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -17.80277 21.04537 -0.846 0.3992
log(chempi) 3.11719 0.47920 6.505 1.72e-09 ***
log(gas) 0.19634 0.90662 0.217 0.8289
log(rtwex) 0.98302 0.40015 2.457 0.0154 *
befile6 0.05957 0.26097 0.228 0.8198
affile6 -0.03241 0.26430 -0.123 0.9026
afdec6 -0.56524 0.28584 -1.978 0.0502 .
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 0.5974 on 124 degrees of freedom
Multiple R-squared: 0.3049, Adjusted R-squared: 0.2712
F-statistic: 9.064 on 6 and 124 DF, p-value: 3.255e-08
Agora, criando uma tabela com as várias saídas de modelos, com o pacote stargazer tem-se, com a geração de AIC e BIC:
> library(stargazer)
> mod1$AIC <- AIC(mod1)
>
> mod1$BIC <- BIC(mod1)
>
> library(stargazer)
> star.1 <- stargazer(mod1,
+ title="Título: Resultado da Regressão",
+ align=TRUE,
+ type = "text", style = "all",
+ keep.stat=c("aic","bic","rsq", "adj.rsq","n")
+ )
Título: Resultado da Regressão
===============================================
Dependent variable:
---------------------------
log(chnimp)
-----------------------------------------------
log(chempi) 3.117***
(0.479)
t = 6.505
p = 0.000
log(gas) 0.196
(0.907)
t = 0.217
p = 0.829
log(rtwex) 0.983**
(0.400)
t = 2.457
p = 0.016
befile6 0.060
(0.261)
t = 0.228
p = 0.820
affile6 -0.032
(0.264)
t = -0.123
p = 0.903
afdec6 -0.565*
(0.286)
t = -1.978
p = 0.051
Constant -17.803
(21.045)
t = -0.846
p = 0.400
-----------------------------------------------
Observations 131
R2 0.305
Adjusted R2 0.271
Akaike Inf. Crit. 245.573
Bayesian Inf. Crit. 268.575
===============================================
Note: *p<0.1; **p<0.05; ***p<0.01
Fazendo uma estimativa de um novo modelo, que leve em consideração a sazonalidade, adicionando variáveis binárias para cada mês. Neste caso, são 11 dummies adicionais sendo janeiro o mês base. Ou seja, caso a dummy de um dado mês seja significativa, então ela altera o intercepto relativamente à base que é janeiro.
> mod2 <- lm(log(chnimp)~log(chempi)+log(gas)+log(rtwex)+
+ befile6+affile6+afdec6+
+ feb + mar + apr + may + jun + jul + aug + sep + oct + nov + dec,
+ data = dados)
> summary(mod2)
Call:
lm(formula = log(chnimp) ~ log(chempi) + log(gas) + log(rtwex) +
befile6 + affile6 + afdec6 + feb + mar + apr + may + jun +
jul + aug + sep + oct + nov + dec, data = dados)
Residuals:
Min 1Q Median 3Q Max
-1.98535 -0.36207 0.07366 0.41786 1.37734
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 16.779215 32.428645 0.517 0.6059
log(chempi) 3.265062 0.492930 6.624 1.24e-09 ***
log(gas) -1.278140 1.389008 -0.920 0.3594
log(rtwex) 0.663045 0.471304 1.407 0.1622
befile6 0.139703 0.266808 0.524 0.6016
affile6 0.012632 0.278687 0.045 0.9639
afdec6 -0.521300 0.301950 -1.726 0.0870 .
feb -0.417711 0.304444 -1.372 0.1728
mar 0.059052 0.264731 0.223 0.8239
apr -0.451483 0.268386 -1.682 0.0953 .
may 0.033309 0.269242 0.124 0.9018
jun -0.206332 0.269252 -0.766 0.4451
jul 0.003837 0.278767 0.014 0.9890
aug -0.157064 0.277993 -0.565 0.5732
sep -0.134161 0.267656 -0.501 0.6172
oct 0.051693 0.266851 0.194 0.8467
nov -0.246260 0.262827 -0.937 0.3508
dec 0.132838 0.271423 0.489 0.6255
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 0.6012 on 113 degrees of freedom
Multiple R-squared: 0.3583, Adjusted R-squared: 0.2618
F-statistic: 3.712 on 17 and 113 DF, p-value: 1.282e-05
> mod2$AIC <- AIC(mod2)
> mod2$BIC <- BIC(mod2)
Podemos comparar os modelos;
> library(stargazer)
> star.1 <- stargazer(mod1,mod2,
+ title="Título: Resultado da Regressão",
+ align=TRUE,
+ type = "text", style = "all",
+ keep.stat=c("aic","bic","rsq", "adj.rsq","n")
+ )
Título: Resultado da Regressão
================================================
Dependent variable:
----------------------------
log(chnimp)
(1) (2)
------------------------------------------------
log(chempi) 3.117*** 3.265***
(0.479) (0.493)
t = 6.505 t = 6.624
p = 0.000 p = 0.000
log(gas) 0.196 -1.278
(0.907) (1.389)
t = 0.217 t = -0.920
p = 0.829 p = 0.360
log(rtwex) 0.983** 0.663
(0.400) (0.471)
t = 2.457 t = 1.407
p = 0.016 p = 0.163
befile6 0.060 0.140
(0.261) (0.267)
t = 0.228 t = 0.524
p = 0.820 p = 0.602
affile6 -0.032 0.013
(0.264) (0.279)
t = -0.123 t = 0.045
p = 0.903 p = 0.964
afdec6 -0.565* -0.521*
(0.286) (0.302)
t = -1.978 t = -1.726
p = 0.051 p = 0.088
feb -0.418
(0.304)
t = -1.372
p = 0.173
mar 0.059
(0.265)
t = 0.223
p = 0.824
apr -0.451*
(0.268)
t = -1.682
p = 0.096
may 0.033
(0.269)
t = 0.124
p = 0.902
jun -0.206
(0.269)
t = -0.766
p = 0.446
jul 0.004
(0.279)
t = 0.014
p = 0.990
aug -0.157
(0.278)
t = -0.565
p = 0.574
sep -0.134
(0.268)
t = -0.501
p = 0.618
oct 0.052
(0.267)
t = 0.194
p = 0.847
nov -0.246
(0.263)
t = -0.937
p = 0.351
dec 0.133
(0.271)
t = 0.489
p = 0.626
Constant -17.803 16.779
(21.045) (32.429)
t = -0.846 t = 0.517
p = 0.400 p = 0.606
------------------------------------------------
Observations 131 131
R2 0.305 0.358
Adjusted R2 0.271 0.262
Akaike Inf. Crit. 245.573 257.089
Bayesian Inf. Crit. 268.575 311.718
================================================
Note: *p<0.1; **p<0.05; ***p<0.01
Neste caso, apenas o mês de abril foi significativo e portanto distinto da base. Todos os demais meses têm o mesmo comportamento e igual a janeiro. Não foi possível melhorar o modelo colocando essas dummies mensais.
Podemos olhar um gráfico temporal de log(chempi), quando realmente não é detectável uma sazonalidade destacada.
> plot(as.ts(log(chempi)))
Outra tentativa incluirá agora as dummies para estações: spring (spr), summer (sum), fall (fall). A base agora será winter, inverno norte-americano.
> mod3 <- lm(log(chnimp)~log(chempi)+log(gas)+log(rtwex)+
+ befile6+affile6+afdec6+
+ spr+sum+fall,
+ data = dados)
> summary(mod3)
Call:
lm(formula = log(chnimp) ~ log(chempi) + log(gas) + log(rtwex) +
befile6 + affile6 + afdec6 + spr + sum + fall, data = dados)
Residuals:
Min 1Q Median 3Q Max
-2.00694 -0.41185 0.03826 0.39270 1.48701
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -26.52163 23.29748 -1.138 0.2572
log(chempi) 3.07793 0.48614 6.331 4.29e-09 ***
log(gas) 0.56507 1.00021 0.565 0.5731
log(rtwex) 1.10147 0.42461 2.594 0.0107 *
befile6 0.07669 0.26500 0.289 0.7728
affile6 -0.08329 0.27283 -0.305 0.7607
afdec6 -0.62120 0.29542 -2.103 0.0376 *
spr -0.04122 0.15117 -0.273 0.7856
sum -0.15190 0.16926 -0.897 0.3713
fall -0.06728 0.15448 -0.436 0.6640
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 0.6026 on 121 degrees of freedom
Multiple R-squared: 0.3097, Adjusted R-squared: 0.2583
F-statistic: 6.032 on 9 and 121 DF, p-value: 5.789e-07
> mod3$AIC <- AIC(mod3)
> mod3$BIC <- BIC(mod3)
> library(stargazer)
> star.1 <- stargazer(mod1,mod3,
+ title="Título: Resultado da Regressão",
+ align=TRUE,
+ type = "text", style = "all",
+ keep.stat=c("aic","bic","rsq", "adj.rsq","n")
+ )
Título: Resultado da Regressão
================================================
Dependent variable:
----------------------------
log(chnimp)
(1) (2)
------------------------------------------------
log(chempi) 3.117*** 3.078***
(0.479) (0.486)
t = 6.505 t = 6.331
p = 0.000 p = 0.000
log(gas) 0.196 0.565
(0.907) (1.000)
t = 0.217 t = 0.565
p = 0.829 p = 0.574
log(rtwex) 0.983** 1.101**
(0.400) (0.425)
t = 2.457 t = 2.594
p = 0.016 p = 0.011
befile6 0.060 0.077
(0.261) (0.265)
t = 0.228 t = 0.289
p = 0.820 p = 0.773
affile6 -0.032 -0.083
(0.264) (0.273)
t = -0.123 t = -0.305
p = 0.903 p = 0.761
afdec6 -0.565* -0.621**
(0.286) (0.295)
t = -1.978 t = -2.103
p = 0.051 p = 0.038
spr -0.041
(0.151)
t = -0.273
p = 0.786
sum -0.152
(0.169)
t = -0.897
p = 0.372
fall -0.067
(0.154)
t = -0.436
p = 0.664
Constant -17.803 -26.522
(21.045) (23.297)
t = -0.846 t = -1.138
p = 0.400 p = 0.258
------------------------------------------------
Observations 131 131
R2 0.305 0.310
Adjusted R2 0.271 0.258
Akaike Inf. Crit. 245.573 250.660
Bayesian Inf. Crit. 268.575 282.287
================================================
Note: *p<0.1; **p<0.05; ***p<0.01
Do mesmo modo, o modelo não melhorou com dummies para estações. Não foram estatisticamente diferentes da base.
O modelo é sabidamente alvo de problemas de autocorrelação, e desta forma será tratado, como poderá ser analisado por inferências robustas em Wooldridge (2006, p.383)
HEISS, Florian. Using R for Introductory Econometrics. 2.ed. Florian Heiss, 2020. Recurso online. Disponível em: http://www.urfie.net/.
SHEA, Justin M. wooldridge: vignette. 2020. Disponível em: https://justinmshea.github.io/wooldridge/articles/Introductory-Econometrics-Examples.html.
SHEA, Justin M. wooldridge: 111 Data Sets from “Introductory Econometrics: A Modern Approach, 6e” by Jeffrey M. Wooldridge. R package version 1.3.1. 2018. Disponível em: https://CRAN.R-project.org/package=wooldridge.
WOOLDRIDGE, J.M. Introdução à Econometria: uma abordagem moderna. São Paulo: Pioneira Thomson Learning, 2006.(tradução da segunda edição americana).