Abstract
We analyse different specifications of dummy variables for the states in the explanation of the produced cotton. The example is a simplified exercise using a linear multiple regression.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: exercício da quantidade produzida de algodão em MS, MT e GO. Campo Grande-MS,Brasil: RStudio/Rpubs, 2019. Disponível em http://rpubs.com/amrofi/cotton_exercise.
Os primeiros passos são criar ou abrir um diretório de trabalho. Se optar por criar um novo projeto, haverá a possibilidade de criar em uma pasta vazia. Em seguida, sugere-se que coloque os dados nesta pasta, se possível em um arquivo MS Excel e chame a planilha de ‘dados’.Neste caso, a planilha chama-se dados_centro_oeste.xlsx. Os dados foram coletados em 2002 e sofreram revisões pelo IBGE, de modo a não estarem perfeitamente idênticos aos do SIDRA-IBGE (Tabela 1612 da PAM - Pesquisa Agrícola Municipal: http://api.sidra.ibge.gov.br/values/t/1612/n3/51,52,50/v/109,214,215,216/p/all/c81/2689).
Seja uma estimação da quantidade de algodão (QALG) em função da área de algodão (AALG), do preço do algodão (PALG), do preço da soja (PSOJA), para municípios de Mato Grosso do Sul (MS), Mato Grosso (MT) e Goiás (GO). É possível dizer que a quantidade de algodão tem um comportamento distinto entre os estados MS, MT e GO?
Neste exercício, para m=3 respostas (MS, MT ou GO), colocam-se duas (m-1=2) dummies: DMS e DMT.
A rotina para chamar os dados de uma arquivo Excel encontra-se a seguir, porém, optamos por colocá-los dentro do arquivo RMarkdown. A rotina do embeded data está logo na sequência.
# exercicio para trabalhar dummies chamando os dados de producao de algodao
# dos estados do centro-oeste com dados da PAM IBGE 1990 a 2000, para cada
# estado MS MT GO ou seja 33 observacoes
library(readxl)
library(foreign)
dados <- read_excel("dados_centro_oeste.xlsx", sheet = "dados")
# Qalg = quantidade produzida de algodao Aalg = área total colhida de
# algodao Palg = preco do algodao Psoja = preco da soja DMS e DMT sao
# dummies para os estados em que GO é a base estado é uma variável
# indicadora contendo a sigla do estado
A opção gerada pelo dput()
dos dados básicos está abaixo:
dados <- structure(list(ano = c(1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997,
1998, 1999, 2000, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
1999, 2000, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
2000), Qalg = c(59754, 83650, 83710, 94560, 101368, 157031, 173796, 189699,
260452, 278363, 254476, 73559, 90561, 85119, 64735, 77409, 105791, 87952,
56027, 93229, 114521, 127839, 57634, 73458, 67862, 85641, 91828, 87458,
73553, 78376, 271038, 630406, 1002836), Aalg = c(35459, 42990, 53772, 38172,
53773, 69533, 81659, 83234, 186661, 117056, 96718, 44570, 51888, 73333,
39643, 41135, 60011, 59637, 26604, 49151, 46231, 48450, 43422, 68443, 53836,
69584, 66059, 69390, 55075, 42259, 106483, 200182, 257762), Palg = c(0.356572484593691,
0.28548486348212, 0.18460421844633, 0.206416737228048, 0.415961827791941,
0.306940214830232, 0.355443864081562, 0.426290579971575, 0.345460690410503,
0.369425952314763, 0.372826913527653, 0.370110836978266, 0.337634829251245,
0.19012070963983, 0.18883532150463, 0.514823904914612, 0.340196812424667,
0.303950608442499, 0.399129289604689, 0.340215816862215, 0.407992489922868,
0.362518549919648, 0.268432114188467, 0.248378441722003, 0.171583759997412,
0.214788618467748, 0.511497661369565, 0.304906963153987, 0.28341715278882,
0.359730772000928, 0.355262834733223, 0.369540331161043, 0.326479031442301),
Psoja = c(0.129725363498433, 0.116121616325159, 0.112620111592226, 0.0873969828327483,
0.176972146441714, 0.103769694520009, 0.149613452870967, 0.1663861049096,
0.143011987528068, 0.14175993084962, 0.137533111256611, 0.150873051860415,
0.138236213975033, 0.12167602921687, 0.129874022775396, 0.207511199152738,
0.108008706367883, 0.154946820778127, 0.172922997949505, 0.138872367383235,
0.148515655529693, 0.136549826243949, 0.113535605629564, 0.117219268828656,
0.0968498706796199, 0.0719258443192821, 0.208422118749737, 0.104896138231911,
0.135136436052929, 0.150488044032018, 0.123091268671333, 0.11957295449546,
0.130580697047997), DMS = c(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), DMT = c(0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1), estado = c("go", "go", "go", "go", "go",
"go", "go", "go", "go", "go", "go", "ms", "ms", "ms", "ms", "ms", "ms",
"ms", "ms", "ms", "ms", "ms", "mt", "mt", "mt", "mt", "mt", "mt", "mt",
"mt", "mt", "mt", "mt")), row.names = c(NA, -33L), class = c("tbl_df",
"tbl", "data.frame"))
attach(dados)
Vamos ver como está a tabela importada:
library(knitr)
kable(dados, caption = "Dados do Exercício")
ano | Qalg | Aalg | Palg | Psoja | DMS | DMT | estado |
---|---|---|---|---|---|---|---|
1990 | 59754 | 35459 | 0.3565725 | 0.1297254 | 0 | 0 | go |
1991 | 83650 | 42990 | 0.2854849 | 0.1161216 | 0 | 0 | go |
1992 | 83710 | 53772 | 0.1846042 | 0.1126201 | 0 | 0 | go |
1993 | 94560 | 38172 | 0.2064167 | 0.0873970 | 0 | 0 | go |
1994 | 101368 | 53773 | 0.4159618 | 0.1769721 | 0 | 0 | go |
1995 | 157031 | 69533 | 0.3069402 | 0.1037697 | 0 | 0 | go |
1996 | 173796 | 81659 | 0.3554439 | 0.1496135 | 0 | 0 | go |
1997 | 189699 | 83234 | 0.4262906 | 0.1663861 | 0 | 0 | go |
1998 | 260452 | 186661 | 0.3454607 | 0.1430120 | 0 | 0 | go |
1999 | 278363 | 117056 | 0.3694260 | 0.1417599 | 0 | 0 | go |
2000 | 254476 | 96718 | 0.3728269 | 0.1375331 | 0 | 0 | go |
1990 | 73559 | 44570 | 0.3701108 | 0.1508731 | 1 | 0 | ms |
1991 | 90561 | 51888 | 0.3376348 | 0.1382362 | 1 | 0 | ms |
1992 | 85119 | 73333 | 0.1901207 | 0.1216760 | 1 | 0 | ms |
1993 | 64735 | 39643 | 0.1888353 | 0.1298740 | 1 | 0 | ms |
1994 | 77409 | 41135 | 0.5148239 | 0.2075112 | 1 | 0 | ms |
1995 | 105791 | 60011 | 0.3401968 | 0.1080087 | 1 | 0 | ms |
1996 | 87952 | 59637 | 0.3039506 | 0.1549468 | 1 | 0 | ms |
1997 | 56027 | 26604 | 0.3991293 | 0.1729230 | 1 | 0 | ms |
1998 | 93229 | 49151 | 0.3402158 | 0.1388724 | 1 | 0 | ms |
1999 | 114521 | 46231 | 0.4079925 | 0.1485157 | 1 | 0 | ms |
2000 | 127839 | 48450 | 0.3625185 | 0.1365498 | 1 | 0 | ms |
1990 | 57634 | 43422 | 0.2684321 | 0.1135356 | 0 | 1 | mt |
1991 | 73458 | 68443 | 0.2483784 | 0.1172193 | 0 | 1 | mt |
1992 | 67862 | 53836 | 0.1715838 | 0.0968499 | 0 | 1 | mt |
1993 | 85641 | 69584 | 0.2147886 | 0.0719258 | 0 | 1 | mt |
1994 | 91828 | 66059 | 0.5114977 | 0.2084221 | 0 | 1 | mt |
1995 | 87458 | 69390 | 0.3049070 | 0.1048961 | 0 | 1 | mt |
1996 | 73553 | 55075 | 0.2834172 | 0.1351364 | 0 | 1 | mt |
1997 | 78376 | 42259 | 0.3597308 | 0.1504880 | 0 | 1 | mt |
1998 | 271038 | 106483 | 0.3552628 | 0.1230913 | 0 | 1 | mt |
1999 | 630406 | 200182 | 0.3695403 | 0.1195730 | 0 | 1 | mt |
2000 | 1002836 | 257762 | 0.3264790 | 0.1305807 | 0 | 1 | mt |
library(knitr)
kable(summary(dados), caption = "Estatísticas descritivas")
ano | Qalg | Aalg | Palg | Psoja | DMS | DMT | estado | |
---|---|---|---|---|---|---|---|---|
Min. :1990 | Min. : 56027 | Min. : 26604 | Min. :0.1716 | Min. :0.07193 | Min. :0.0000 | Min. :0.0000 | Length:33 | |
1st Qu.:1992 | 1st Qu.: 77409 | 1st Qu.: 44570 | 1st Qu.:0.2834 | 1st Qu.:0.11612 | 1st Qu.:0.0000 | 1st Qu.:0.0000 | Class :character | |
Median :1995 | Median : 90561 | Median : 55075 | Median :0.3402 | Median :0.13514 | Median :0.0000 | Median :0.0000 | Mode :character | |
Mean :1995 | Mean : 158597 | Mean : 73702 | Mean :0.3271 | Mean :0.13469 | Mean :0.3333 | Mean :0.3333 | NA | |
3rd Qu.:1998 | 3rd Qu.: 157031 | 3rd Qu.: 73333 | 3rd Qu.:0.3695 | 3rd Qu.:0.14961 | 3rd Qu.:1.0000 | 3rd Qu.:1.0000 | NA | |
Max. :2000 | Max. :1002836 | Max. :257762 | Max. :0.5148 | Max. :0.20842 | Max. :1.0000 | Max. :1.0000 | NA |
library(gplots)
plotmeans(Qalg ~ estado, main = "Heterogeneidade entre estados", data = dados)
plotmeans(Palg ~ estado, main = "Heterogeneidade entre estados", data = dados)
plotmeans(Psoja ~ estado, main = "Heterogeneidade entre estados", data = dados)
correlacao <- cor(dados[, 2:5])
correlacao
Qalg Aalg Palg Psoja
Qalg 1.00000000 0.92285073 0.13167353 -0.04450812
Aalg 0.92285073 1.00000000 0.09071653 -0.06899129
Palg 0.13167353 0.09071653 1.00000000 0.81656495
Psoja -0.04450812 -0.06899129 0.81656495 1.00000000
Vamos estimar o modelo linear múltiplo fazendo as regressoes de QAlg contra Aalg, Palg, Psoja e as dummies dos estados.
attach(dados)
reg.empilhada <- lm(Qalg ~ Aalg + Palg + Psoja)
summary(reg.empilhada)
Call:
lm(formula = Qalg ~ Aalg + Palg + Psoja)
Residuals:
Min 1Q Median 3Q Max
-279711 -12220 5624 24973 222085
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -1.080e+05 6.523e+04 -1.656 0.109
Aalg 3.372e+00 2.716e-01 12.413 3.97e-13 ***
Palg 2.249e+05 2.761e+05 0.815 0.422
Psoja -4.119e+05 7.886e+05 -0.522 0.605
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 74870 on 29 degrees of freedom
Multiple R-squared: 0.8553, Adjusted R-squared: 0.8404
F-statistic: 57.15 on 3 and 29 DF, p-value: 2.741e-12
# incluindo Akaike e Schwarz no objeto reg.empilhada
reg.empilhada$AIC <- AIC(reg.empilhada)
reg.empilhada$BIC <- BIC(reg.empilhada)
library(stargazer)
stargazer(list(reg.empilhada), 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:
---------------------------
Qalg
-----------------------------------------------
Aalg 3.372***
(0.272)
t = 12.413
p = 0.000
Palg 224,936.700
(276,101.200)
t = 0.815
p = 0.422
Psoja -411,931.000
(788,639.400)
t = -0.522
p = 0.606
Constant -108,010.900
(65,228.060)
t = -1.656
p = 0.109
-----------------------------------------------
Observations 33
R2 0.855
Adjusted R2 0.840
Akaike Inf. Crit. 840.140
Bayesian Inf. Crit. 847.623
===============================================
Note: *p<0.1; **p<0.05; ***p<0.01
reg.dint <- lm(Qalg ~ Aalg + Palg + Psoja + DMS + DMT, data = dados)
summary(reg.dint)
Call:
lm(formula = Qalg ~ Aalg + Palg + Psoja + DMS + DMT, data = dados)
Residuals:
Min 1Q Median 3Q Max
-268125 -18434 6251 29361 211113
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -1.192e+05 6.951e+04 -1.715 0.0979 .
Aalg 3.428e+00 2.939e-01 11.664 4.74e-12 ***
Palg 2.549e+05 2.827e+05 0.902 0.3752
Psoja -5.604e+05 8.284e+05 -0.676 0.5045
DMS 3.438e+04 3.436e+04 1.001 0.3259
DMT 1.730e+04 3.307e+04 0.523 0.6052
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 76180 on 27 degrees of freedom
Multiple R-squared: 0.8606, Adjusted R-squared: 0.8348
F-statistic: 33.33 on 5 and 27 DF, p-value: 9.707e-11
reg.dint$AIC <- AIC(reg.dint)
reg.dint$BIC <- BIC(reg.dint)
stargazer(list(reg.empilhada, reg.dint), title = "Título: Resultados das Regressões",
align = TRUE, type = "text", style = "commadefault", keep.stat = c("aic",
"bic", "rsq", "adj.rsq", "n"))
Título: Resultados das Regressões
================================================
Dependent variable:
----------------------------
Qalg
(1) (2)
------------------------------------------------
Aalg 3,372*** 3,428***
(0,272) (0,294)
Palg 224 936,700 254 920,700
(276 101,200) (282 723,600)
Psoja -411 931,000 -560 375,200
(788 639,400) (828 440,200)
DMS 34 383,040
(34 362,420)
DMT 17 299,030
(33 069,470)
Constant -108 010,900 -119 182,100*
(65 228,060) (69 507,100)
------------------------------------------------
Observations 33 33
R2 0,855 0,861
Adjusted R2 0,840 0,835
Akaike Inf. Crit. 840,140 842,920
Bayesian Inf. Crit. 847,623 853,396
================================================
Note: *p<0,1; **p<0,05; ***p<0,01
estado
ao invés das dummiesreg.dint2 <- lm(Qalg ~ Aalg + Palg + Psoja + estado, data = dados)
summary(reg.dint2)
Call:
lm(formula = Qalg ~ Aalg + Palg + Psoja + estado, data = dados)
Residuals:
Min 1Q Median 3Q Max
-268125 -18434 6251 29361 211113
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -1.192e+05 6.951e+04 -1.715 0.0979 .
Aalg 3.428e+00 2.939e-01 11.664 4.74e-12 ***
Palg 2.549e+05 2.827e+05 0.902 0.3752
Psoja -5.604e+05 8.284e+05 -0.676 0.5045
estadoms 3.438e+04 3.436e+04 1.001 0.3259
estadomt 1.730e+04 3.307e+04 0.523 0.6052
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 76180 on 27 degrees of freedom
Multiple R-squared: 0.8606, Adjusted R-squared: 0.8348
F-statistic: 33.33 on 5 and 27 DF, p-value: 9.707e-11
reg.dint2$AIC <- AIC(reg.dint2)
reg.dint2$BIC <- BIC(reg.dint2)
stargazer(list(reg.dint, reg.dint2), title = "Título: Resultados das Regressões",
align = TRUE, type = "text", style = "commadefault", keep.stat = c("aic",
"bic", "rsq", "adj.rsq", "n"))
Título: Resultados das Regressões
================================================
Dependent variable:
----------------------------
Qalg
(1) (2)
------------------------------------------------
Aalg 3,428*** 3,428***
(0,294) (0,294)
Palg 254 920,700 254 920,700
(282 723,600) (282 723,600)
Psoja -560 375,200 -560 375,200
(828 440,200) (828 440,200)
DMS 34 383,040
(34 362,420)
DMT 17 299,030
(33 069,470)
estadoms 34 383,040
(34 362,420)
estadomt 17 299,030
(33 069,470)
Constant -119 182,100* -119 182,100*
(69 507,100) (69 507,100)
------------------------------------------------
Observations 33 33
R2 0,861 0,861
Adjusted R2 0,835 0,835
Akaike Inf. Crit. 842,920 842,920
Bayesian Inf. Crit. 853,396 853,396
================================================
Note: *p<0,1; **p<0,05; ***p<0,01
reg.dum <- lm(Qalg ~ Aalg + Palg + Psoja + estado + I(Aalg * DMS) + I(Aalg *
DMT), data = dados)
reg.dum$AIC <- AIC(reg.dum)
reg.dum$BIC <- BIC(reg.dum)
# summary(reg.dum)
reg.dum2 <- lm(Qalg ~ Aalg + Palg + Psoja + DMS + DMT + I(Aalg * DMS) + I(Aalg *
DMT), data = dados)
reg.dum2$AIC <- AIC(reg.dum2)
reg.dum2$BIC <- BIC(reg.dum2)
stargazer(list(reg.dum, reg.dum2), title = "Título: Resultados das Regressões",
align = TRUE, type = "text", style = "commadefault", keep.stat = c("aic",
"bic", "rsq", "adj.rsq", "n"))
Título: Resultados das Regressões
===================================================
Dependent variable:
-------------------------------
Qalg
(1) (2)
---------------------------------------------------
Aalg 1,502*** 1,502***
(0,289) (0,289)
Palg 107 111,300 107 111,300
(149 136,400) (149 136,400)
Psoja -82 016,410 -82 016,410
(437 561,500) (437 561,500)
estadoms -2 898,414
(62 151,800)
estadomt -214 415,100***
(32 669,700)
DMS -2 898,414
(62 151,800)
DMT -214 415,100***
(32 669,700)
I(Aalg * DMS) -0,466 -0,466
(1,132) (1,132)
I(Aalg * DMT) 2,805*** 2,805***
(0,340) (0,340)
Constant 16 181,970 16 181,970
(39 649,590) (39 649,590)
---------------------------------------------------
Observations 33 33
R2 0,965 0,965
Adjusted R2 0,955 0,955
Akaike Inf. Crit. 801,298 801,298
Bayesian Inf. Crit. 814,767 814,767
===================================================
Note: *p<0,1; **p<0,05; ***p<0,01
attach(dados)
library(dummies)
# o pacote cria dummies usando o nome da variável justaposto com o codigo
# das observacoes: estadogo, estadoms,estadomt alternativa de usar o pacote
# dummies
library(dummies)
dummies <- dummy(estado, drop = FALSE)
colnames(dummies) <- c("estadogo", "estadoms", "estadomt")
dados <- cbind(dados, dummies)
# o pacote cria dummies usando o nome da variável justaposto com o codigo
# das observacoes: estadogo, estadoms,estadomt
print(dados)
ano Qalg Aalg Palg Psoja DMS DMT estado estadogo estadoms
1 1990 59754 35459 0.3565725 0.12972536 0 0 go 1 0
2 1991 83650 42990 0.2854849 0.11612162 0 0 go 1 0
3 1992 83710 53772 0.1846042 0.11262011 0 0 go 1 0
4 1993 94560 38172 0.2064167 0.08739698 0 0 go 1 0
5 1994 101368 53773 0.4159618 0.17697215 0 0 go 1 0
6 1995 157031 69533 0.3069402 0.10376969 0 0 go 1 0
7 1996 173796 81659 0.3554439 0.14961345 0 0 go 1 0
8 1997 189699 83234 0.4262906 0.16638610 0 0 go 1 0
9 1998 260452 186661 0.3454607 0.14301199 0 0 go 1 0
estadomt
1 0
2 0
3 0
4 0
5 0
6 0
7 0
8 0
9 0
[ reached 'max' / getOption("max.print") -- omitted 24 rows ]
Agora calcularei a TGC (taxa geométrica de crescimento) para a variável QAlg. Também chamado de “growth model” em Gujarati (2015,p.33-35, Econometrics by example), para o modelo log-linear (ou modelo semilog) do tipo:
\[ \ln Qalg_t= \beta_{1}+ \beta_{2}t+\epsilon_t \]
em que t é a variável tendência para os anos de 1990 a 2000. O parâmetro \(\beta_{2}\) é o coeficiente de interesse, da inclinação, o qual mede a mudança relativa no regressando para uma dada mudança absoluta no regressor - é a taxa instantânea de crescimento. A TGC será a taxa composta (para um período de tempo) de crescimento. A TGC será
\[ TGC = [e^{\beta_{2}}-1)]*100 \]
# sejam as variáveis v para a serie que se quer a TGC e t para o ano
# para Qalg MT
vmt <- dados[23:33, 2]
t <- dados[23:33, 1] # anos 1990 a 2000
logv <- log(vmt)
eq = lm(logv ~ t)
# pego o segundo parâmetro - o primeiro é o intercepto
beta <- summary(eq)$coefficients[2]
# Calculo da TGC
(TGC = I((exp(beta) - 1) * 100))
[1] 27.39809
summary(eq)
Call:
lm(formula = logv ~ t)
Residuals:
Min 1Q Median 3Q Max
-0.99807 -0.25869 0.05916 0.38977 0.82456
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -471.29928 113.40011 -4.156 0.00246 **
t 0.24215 0.05684 4.260 0.00211 **
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 0.5962 on 9 degrees of freedom
Multiple R-squared: 0.6685, Adjusted R-squared: 0.6316
F-statistic: 18.15 on 1 and 9 DF, p-value: 0.002111
Ou seja, neste caso temos uma TGC de 27.39% ao ano paa QAlg de MT. Deve-se atentar que o parâmetro de \(t\) na regressão (\(\beta_{2}\)) foi estatisticamente significativo.
attach(dados)
# sem dummies
mod1 <- lm(log(Qalg) ~ log(Aalg) + log(Palg) + log(Psoja), data = dados)
mod1$AIC <- AIC(mod1)
mod1$BIC <- BIC(mod1)
# alterando somente intercepto
mod2 <- lm(log(Qalg) ~ log(Aalg) + log(Palg) + log(Psoja) + estado, data = dados)
mod2$AIC <- AIC(mod2)
mod2$BIC <- BIC(mod2)
# alterando intercepto e inclinacao de Aalg
mod3 <- lm(log(Qalg) ~ log(Aalg) + log(Palg) + log(Psoja) + estado + I(log(Aalg) *
DMS) + I(log(Aalg) * DMT), data = dados)
mod3$AIC <- AIC(mod3)
mod3$BIC <- BIC(mod3)
# consolidando a tabela comparativa
stargazer(list(mod1, mod2, mod3), title = "Título: Resultados das Regressões - com logs",
align = TRUE, type = "text", style = "commadefault", keep.stat = c("aic",
"bic", "rsq", "adj.rsq", "n"))
Título: Resultados das Regressões - com logs
=================================================
Dependent variable:
-----------------------------
log(Qalg)
(1) (2) (3)
-------------------------------------------------
log(Aalg) 1,155*** 1,205*** 0,926***
(0,098) (0,104) (0,134)
log(Palg) 0,637** 0,653** 0,499**
(0,264) (0,258) (0,207)
log(Psoja) -0,352 -0,476 -0,339
(0,333) (0,337) (0,272)
estadoms -0,003 2,855
(0,121) (3,272)
estadomt -0,203* -7,201***
(0,115) (1,952)
I(log(Aalg) * DMS) -0,276
(0,301)
I(log(Aalg) * DMT) 0,624***
(0,174)
Constant -1,089 -1,801 1,408
(1,109) (1,251) (1,625)
-------------------------------------------------
Observations 33 33 33
R2 0,854 0,871 0,926
Adjusted R2 0,839 0,848 0,906
Akaike Inf. Crit. 13,233 13,061 -1,353
Bayesian Inf. Crit. 20,716 23,536 12,115
=================================================
Note: *p<0,1; **p<0,05; ***p<0,01
É importante salientar que não se pode comparar os AIC e BIC entre os modelos com logs e sem logs. Desta forma, a medida de comparação será o \(R^2\) ajustado. O modelo com logs permite liberar a restrição de linearidade por meio da transformação das variáveis e o ajuste pode ser considerado satisfatório, agora com \(R^2\) de 0,926 e \(R^2\) ajustado de 0,906 para o modelo com alteração no intercepto e em Aalg, e os parâmetros significativos a 5% de significância para Aalg, Palg, e os termos de Mato Grosso. Ou seja, para GO e MS tem-se uma só equação enquanto para MT a equação altera o intercepto e a inclinação de Aalg.