Uncategorized

Alô você, aluno de Econometria I: olha o consumo e a renda… (Momento R do Dia)

Mais uma dica de R para o aluno de Econometria I. O exercício pede para você estimar uma função consumo keynesiana com dados do Brasil (em valores constantes de 1995, R$ milhões). Note que não se pede atenção inicial para características de séries de tempo e, assim, você deve refletir sobre os resultados e consultar o seu professor. Caso você seja aluno do meu amigo Salvato, leve isto até ele e discuta. Caso seja aluno da Roseli, ela vai te mandar ler e estudar e, bem, ela está certa. Mas aposto que ela vai querer discutir o exercício com você também. Ok, você entendeu, os dois são bons professores. Mas vamos em frente.

Dados

Ambos tirados daqui. Crie uma planilha com duas colunas: PIB e Consumo (exatamente com estes nomes). Cole ambos lá. Depois, importe para o R com o comando que copia e cola o que você copiou para o clipboard (eu nunca sei a tradução disto, mas o monitor de Econometria certamente sabe).

# copy and paste primeiras colunas de blablabla.xlsx
base <- read.table(file = "clipboard", sep = "\t", header=TRUE)
head(base)
pib<-ts(base$PIB, start=c(1996,1),freq=4)
cons<-ts(base$Consumo, start=c(1996,1), freq=4)

Repare que confiro os dados olhando as primeiras linhas com o comando head. Depois, informo ao computador que vou criar “pib” e “cons” a partir dos dados que importei. Informo que são trimestrais (freq=4) e que a base se inicia no 1o trimestre de 1996.

library(lmtest)
library(ggplot2)
library(lattice)
library(latticeExtra)
library(car)

#ambos em R$ milhões
# fazendo um dataframe para simplificar a obtencao da matriz de varcov

data<-data.frame(cons,pib)
cor(data)

No conjunto acima de comandos, apenas carrego alguns pacotes que penso em usar como os gráficos ggplot2lattice latticeExtra. Para fazer testes, carrego o lmtest e, finalmente, para um diagrama de dispersão mais informativo, uso car. Os comandos seguintes criam um data.frame com as duas variáveis apenas para que eu possa calcular a correlação dos dados. Verifique há uma correlação elevada entre pib e cons. Bem, agora, uma imensa sequência de comandos.

# fazendo um pouco de bobagens
xyplot(cons~pib)

# ou, usando scatterplot, de "car"
scatterplot(cons~pib)

# Alguns resultados
exerc<-lm(cons~pib)
summary(exerc)

# o que mais temos...
ls(exerc)

# por exemplo, se eu quiser plotar os residuos:
plot(exerc$residuals)
# para diversos testes de diagnosticos:
plot(exerc)

# mas o erro-padrão robusto...
library(sandwich)
coeftest(exerc, df = Inf, vcov = NeweyWest)

# de lmtest, usamos...
dwtest(exerc)

# ou do pacote car
durbinWatsonTest(exerc)

# BG test
bgtest(exerc)

Repare que há muita coisa feita aí. Há duas visualizações gráficas simples, apenas comprovando a suspeita de elevada correlação entre as duas variáveis. Só para não ficarmos sem um gráfico, olha ele aí. consumo_br Em seguida, uso o comando básico do R, lm, para fazer aplicar um MQO à relação de consumo e renda. Não é preciso colocar o intercepto, mas você poderia fazê-lo escrevendo lm(cons~pib+1). Aliás, caso queira fazer sem o intercepto, reescreva como: lm(cons~pib-1). O que nos interessa é o resultado da estimação. Ou pelo menos o resumo do mesma. Assim, summary. Note que fica mais fácil nomear a regressão e pedir o resultado do que escrever: summary(lm(cons~pib)), embora você tenha a mesma coisa em sua tela de resultados no final. A vantagem de se nomear o objeto é poder, por exemplo, verificar alguns gráficos de testes de diagnósticos com plot(). O comando plot(), que também serve para fazer gráfico de séries, tem uma função especial no caso de objetos de regressão: ele nos dá gráficos de alguns testes de diagnósticos. Experimente você mesmo.

Sanduíches

Bem, a garotada de Econometria I adora uma matriz-sanduíche, com bacon e tudo o mais. Muitos nem sabem que estão usando este tipo de matriz porque decoram comandos, mesmo com os apelos do Salvato pelo bom uso do cérebro. Bom, a matriz-sanduíche mais comum lá no Salvato é a de Newey-West e o comando é coeftest(exerc, df = Inf, vcov = NeweyWest). Antes de me perguntar sobre o porquê disto, leia isto.

Para terminar…

O exercício tradicional de regressão simples não estaria completo se eu não falasse de autocorrelação dos resíduos. Há dois jeitos de se fazer um importante teste, neste caso, que é o teste de Durbin-Watson. Não é o melhor teste para autocorrelação, mas vamos lá. Do pacote car, você tem durbinWatsonTest() e, do lmtest, dw(). Outra opção é fazer o teste de Breusch-Godfrey. Caso você não o conheça, leia isto.

Um resumo destes resultados (sem Newey-West):

Call:
lm(formula = cons ~ pib)

Residuals:

Min   1Q   Median   3Q   Max

-9547.2 -3374.1 336.9 3496.4 10143.2

Coefficients:

Estimate    Std. Error     t value    Pr(>|t|)

(Intercept)     -1.270e+04   3.331e+03  -3.812   0.000297 ***
pib                   6.801e-01   1.440e-02   47.232   < 2e-16 ***

Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 4692 on 69 degrees of freedom
Multiple R-squared: 0.97, Adjusted R-squared: 0.9696
F-statistic: 2231 on 1 and 69 DF, p-value: < 2.2e-16

Ok, você pode conferir o que encontrou com o que tenho aqui. Discussões sobre Econometria, veja, com o professor Salvato lá no Ibmec, ou com a Roseli lá na FEA-RP, ou com seu professor. Estou apenas dando as dicas do comando no R, ok?

Algumas coisas importantes… Dados no tempo, né? Então, em Econometria II você verá que há muita coisa importante para se pensar. Por enquanto, este é um básico de regressão simples, só para você ficar com aquela sensação boa de que já viu uma função consumo na prática. Depois a gente volta para falar do tema, caso tenhamos um bom ibope.

Uncategorized

IBC-Br e um Momento R do Dia: o teste ADF

Acabo de ler sobre o IBC-Br que, é bom lembrar, não capta as novas e tristes notícias sobre o setor elétrico. Aliás, cá para nós, quando Sarney descongelou depois da esmagadora vitória do PMDB em 1986, o nome que deram ao fato foi “estelionado eleitoral”. Que nome merece o anúncio de que o aumento da conta de energia só vem em 2015 (sem falar nos boatos de que vem aí mais uma prática kirchneriana de “contabilidade criativa”)?

Ah, pois é. Não busque o IBC-Br no Ipeadata porque a última revisão deles, da série, foi de fevereiro e a notícia fala em revisões do Banco Central. Logo, o melhor, como sempre, é ir direto à fonte sempre que possível.

ibc_br11

Podemos ver que há motivos para otimismo, no longo prazo, como sempre digo. Entretanto, no curto prazo, a história não é tão bonita assim. Vamos dar uma olhada na “janela” mais recente.

ibc-br_recente

Dá para ver que o índice anda “patinando” para lá e para cá ultimamente, não? Além da desaceleração, fica a preocupação sobre se vamos ou não voltar a uma trajetória de crescimento como a que tínhamos anteriormente.

E o PIB? Bem, é legal dar uma olhada nas diferenças entre este indicador e o PIB. Segundo a mesma matéria do Estadão (citada no início):

O IBC-Br serve como parâmetro para avaliar o ritmo da economia brasileira ao longo dos meses. Entre os indicadores está a Pesquisa Mensal de Comércio (PMC) do Instituto Brasileiro de Geografia e Estatística (IBGE), que mostrou alta de 0,4% em janeiro ante dezembro na série com ajuste sazonal e 6,2% na comparação entre os primeiros meses do ano de 2014 e 2013. Outro dado importante é a produção industrial, que em janeiro cresceu 2,9% na comparação com o mês anterior, mas caiu 2,4% em relação a janeiro de 2013.

A estimativa do IBC-Br incorpora a produção estimada para os três setores da economia acrescida dos impostos sobre produtos. Já o PIB do IBGE é a soma de todos os bens e serviços produzidos no país durante certo período. Pelo IBC-Br, a economia brasileira cresceu 2,52% em 2013 na comparação com 2012, nos dados sem ajustes sazonais. O PIB calculado pelo IBGE, no entanto, revelou expansão de 2,3% no ano passado.

Pois é. O IBC-Br é tido pelo mercado como uma proxy do PIB, no sentido de que se pudéssemos obter medidas mensais do PIB, estas seriam fortemente correlacionadas com o IBC-Br.

Agora, o momento R do dia!

A idéia é aplicar um teste de raiz unitária comum, o ADF. Para isto, vamos usar o pacote urca. O leitor pode ver mais sobre o teste no bom e velho Enders (1995) ou em Gujarati & Porter (2009), mais recente. Vou seguir com a intuição do livro-texto de graduação, que nos diz que o gráfico da série sugere um teste com o modelo mais completo, com intercepto e tendência determinista.

Os comandos abaixo, respectivamente, carregam o pacote e calculam o teste ADF para o IBC-Br (logaritmizado) em nível e na primeira diferença.

library(urca)
summary(ur.df(log(ibc_br), type=c("trend"),lags=13,selectlags=c("BIC")))
summary(ur.df(diff(log(ibc_br)), type=c("trend"),lags=13,selectlags=c("BIC")))

E então, temos:

> summary(ur.df(log(ibc_br), type=c(“trend”),lags=13,selectlags=c(“BIC”)))

###############################################
# Augmented Dickey-Fuller Test Unit Root Test #
###############################################

Test regression trend
Call:
lm(formula = z.diff ~ z.lag.1 + 1 + tt + z.diff.lag)

Residuals:
Min 1Q Median 3Q Max
-0.043644 -0.003613 0.001186 0.004800 0.030823

Coefficients:
Estimate   Std. Error   t value   Pr(>|t|)
(Intercept)             0.3666494  0.1770436  2.071   0.0406 *
z.lag.1                 -0.0781832  0.0382658  -2.043  0.0433 *
tt                           0.0002038  0.0001157  1.761   0.0809 .
z.diff.lag               0.0195693  0.0949619  0.206   0.8371

Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 0.008717 on 115 degrees of freedom
Multiple R-squared: 0.04641, Adjusted R-squared: 0.02153
F-statistic: 1.865 on 3 and 115 DF, p-value: 0.1393
Value of test-statistic is: -2.0432 5.7813 2.7886

Critical values for test statistics:
1pct 5pct 10pct
tau3 -3.99 -3.43 -3.13
phi2 6.22 4.75 4.07
phi3 8.43 6.49 5.47

O teste para se saber se há ou não raiz unitária é dado pela estatística tau3. O valor calculado é -2.0432 que é, em valor absoluto, menor que o valor absoluto de qualquer um dos valores críticos (a 1% é -3.99, a 5% é -3.43 e a 10%, -3.13). Logo, diríamos que há evidências de que exista uma raiz unitária na série.

A equação estimada (sem a parte aumentada) pode ser expressa da seguinte forma:

Δlog(IBC)t = 0.37 – 0.078logIBCt-1 _ 0.0002tendência_determinista

Repare que a tendência determinista tem uma significância estatística bem menor que os outros termos. De qualquer forma, repare que o lado esquerdo da equação nos diz que, caso alguém resolva reescrever a equação em termos do nível do logaritmo da variável, o coeficiente de logIBCt-1 seria (1 – 0.078) que é algo realmente próximo da unidade.

O segundo comando apenas faz a mesma coisa, mas para a primeira diferença da série, usando o modelo sem tendência determinista. Observando a série em diferenças, não vi evidências de que a tendência determinista seria importante e, assim, escolhi esta equação de teste. Veja o gráfico da primeira diferença do logaritmo da série e, em seguida, os resultados do teste ADF apenas com drift, sem tendência determinista.

diff_ibcbr
###############################################
# Augmented Dickey-Fuller Test Unit Root Test #
###############################################

Test regression drift
Call:
lm(formula = z.diff ~ z.lag.1 + 1 + z.diff.lag)

Residuals:
Min 1Q Median 3Q Max
-0.042180 -0.002883 0.001351 0.004770 0.028825

Coefficients:
Estimate      Std. Error   t value   Pr(>|t|)
(Intercept)     0.0024775   0.0008971   2.762   0.0067 **
z.lag.1         -0.8865066   0.1320898   -6.711   7.65e-10 ***
z.diff.lag       -0.1279585   0.0943900   -1.356   0.1779

Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 0.008849 on 115 degrees of freedom
Multiple R-squared: 0.5124, Adjusted R-squared: 0.5039
F-statistic: 60.42 on 2 and 115 DF, p-value: < 2.2e-16
Value of test-statistic is: -6.7114 22.5228

Critical values for test statistics:
1pct 5pct 10pct
tau2 -3.46 -2.88 -2.57
phi1 6.52 4.63 3.81

A mesma análise mostra que |-6.7114| > |-3.46| a 1%. A evidência, neste caso, seria contrária a não-rejeição da hipótese nula de existência de raiz unitária.

Então, em resumo, log(IBC) ~ I(1). Certo?

Observações

O protocolo de realização de testes que segui é o que está em Gujarati & Porter (2009) e também em Elder & Kennedy (2001). Claro, alguém poderia querer seguir o de Enders (1995), mas Elder e Kennedy mostram que, além de pouco didático, aquele protocolo pode gerar resultados estranhos.

De qualquer forma, um outro ponto que não comentei diz respeito às outras estatísticas de teste. A bibliografia indicada é suficiente para você discutir mais sobre as mesmas.

Não apenas isto, mas veja que alguém poderia dizer que há uma quebra na série, em 2008. Digo, seria uma quebra ou seria apenas uma trajetória deste passeio aleatório que supomos existir? Não sabemos e nem tratamos disto aqui, embora existam testes para isto facilmente implementáveis em R.

Última observação: Gujarati & Porter (2009) é a referência do livro-texto em inglês. Minha edição em português não está aqui perto e eu desconfio que é 2011 o ano do lançamento.

Correlações? Causalidades?

Para onde vai a economia brasileira? Não sei. Mas sei que você já tem trabalho para pensar e trabalho, produtividade e prosperidade têm uma relação interessante. Assim, mãos à obra!

Uncategorized

Qualidade da educação e falhas de governo

Infelizmente, não é fácil determinar a qualidade da educação. Parece que a educação brasileira era bastante fraca em comparação com a da Europa Ocidental, dos Estados Unidos ou da Argentina. O cargo de professor de escola primária tornou-se um prêmio político no Brasil. Os salários dos professores eram tristemente baixos e muitas vezes demoravam meses para serem pagos. Porém, visto que as mulheres dispunham de poucos meios para ganhar dinheiro, elas e suas famílias passaram a competir por cargos na escola primária. O visconde de Taunay escreveu que, quando ele se tornou presidente da província do Paraná, em 1886, um assessor lhe apresentou uma proposta de reforma educacional. A reforma consistia em transferir todos os professores do ensino primário pertencentes ao partido de oposição para outras cidades, de modo que fossem obrigados a renunciar ou ficar separados de seus familiares. (Schulz, J. “A Crise Financeira da Abolição, EDUSP, 2013, 2a ed., p.255-6)

 

Ok, eu não sei se a evidência do Paraná é generalizável, mas o exemplo de que a educação é um “bem público” que “deve ser ofertado pelo governo” fica, no mínimo, bem arranhado. Temos que voltar à Escolha Pública para uma explicação melhor…

Uncategorized

Comer fora de casa aqui e no Japão faz toda a diferença…(Momento R do Dia com Sushi – UPDATED)

Meu ex-aluno Igor quer visitar o Japão. Ele sempre me pergunta algumas dicas de viagem. Bem, eis uma: comer fora no Japão é bem mais barato do que no Brasil. Preços do jantar fora de casa variam menos no Japão do que no Brasil.

Usei os dados do IBGE e do portal e-Stat japonês para obter exatamente o mesmo tópico: alimentação fora de casa. Calculei as variações percentuais e eis o gráfico abaixo (clique na imagem para ampliá-la).

japan_br_fora

Peguei um período menor porque o IBGE mudou a metodologia do IPCA e iria dar muito trabalho fazer o que sempre faço para obter uma série mais longa. Mas acho que os gráficos acima ilustram meu ponto.

Igor, meu caro, prepare-se para uma bela viagem. Afinal, na pior das hipóteses, o governo quer uma meta de 2% de inflação (e sob controle), o que é bem diferente do caos brasileiro obtido por anos e anos de oportunidades perdidas, erros e alguma arrogância por parte de alguns ministros…

Ah sim, os comandos.

comer_fora_de_casa<-read.table(file="clipboard",sep="\t",header=TRUE)
head(comer_fora_de_casa)
show(comer_fora_de_casa)
head(japao)

library(ggplot2)

em<-melt(comer_fora_de_casa, id="month")
em
qplot(month, value, data=em, geom="line",group="variable" )+facet_grid(variable~., scale="free_y")

Espero que tenha gostado, Igor. A propósito…

「これはおいしいね、イゴルさん!」

p.s. extenso

Um leitor comentou sobre a paridade do poder de compra. Obviamente, se quero comparar o custo do jantar em diferentes países, o que é um problema diferente do que tenho aqui (e já citamos o BigMac aqui, não?), ok.

Para que não haja confusão, o fato é que o Igor vai andar no Japão com Yens no bolso e a pergunta dele é se aqueles Yens vão valer menos por conta da inflação no Japão. Estou pensando neste tipo de problema, não em dizer: “ahá, é mais caro comer em Tokyo do que em New York”. O fato é que ele já estará em viagem para o Japão. Então, a pergunta que eu propus é mais simples: “qual é a volatilidade dos preços lá? É maior do que a nossa?”.

A paridade seria útil para uma conta comparativa, mas quem já comprou a passagem, já sabe que estará em uma cidade com um nível de preços mais elevado. Mesmo assim, a inflação – que é a variação deste – não precisa ser mais elevada e, claro, se lá se aceitasse dólares ou reais…

Ah sim, agradeço ao leitor por me ajudar nesta. Nada como bons leitores!