Regressão com Variáveis Instrumentais no R

Modelos de regressão linear via MQO podem sofrer de diversos problemas, como a omissão de variáveis, erros de mensuração e causalidade simultânea, refletindo na inconsistência dos coeficientes estimados. Como resolver esses problemas? Vamos entender como utilizar variáveis instrumentais para contornar essas questões utilizando um exemplo no R.

O problema da regressão via MQO

O uso de regressão linear podem sofrem de problemas tal como a omissão de variáveis, erros de mensuração e causalidade simultânea, que no geral, fazem que haja correlação entre o termo de erro com o regressor de interesse e que torna o seu respectivo coeficiente inconsistente.

De forma geral, utilizar uma regressão linear múltipla e adicionar mais variáveis pode mitigar o risco da estimação enviesada do modelo, entretanto, há a possibilidade de que essas variáveis omitidas não estejam disponíveis, tanto por motivos de falta de dados, tanto por ser impossível mensura-la (tal como uma variável que represente o talento de uma pessoa).

Outro problema surge caso haja uma causalidade da variável X para Y e vice-versa, causando o viés na estimação do coeficiente.

Variável Instrumental

Uma técnica interessante que dá a possibilidade de contornar esses problemas surge através da regressão de variáveis instrumentais (IV), que possibilita o uso da ferramenta de mínimos quadrados em dois estágios (two-stage least squares - TSLS).

Vamos considerar o seguinte modelo de regressão linear

(1)   \begin{align*} Y_i = \beta_0 + \beta_1 X_i + u_i \ \ , \ \ i=1,\dots,n  \end{align*}

Onde o termo de erro u_i é correlacionado com o regressor X_i (X é endógeno) de forma que o MQO seja inconsistente para o verdadeiro \beta_i. Na forma mais simples, a regressão IV usa uma única variável instrumental Z para obter o estimador consistente de \beta_i.

Z deve satisfazer duas condições para ser um instrumento válido.

  1. Condição de relevância: X e seu instrumento Z devem ser correlacionados \rho_{Z_i,X_i} \neq 0
  2. Condição de exogeinedade do instrumento: o instrumento Z não pode ser correlacionado com o termo de erro u: \rho_{Z_i,u_i} = 0

O estimador de dois estágios por MQO

O TSLS é performado em dois estágios. No primeiro estágio, decompõe-se a variação do regressor endogeno X em um componente, no qual não possui nenhum problema, que é explicado pelo instrumento Z e também em um componente problemático que é correlacionado com o termo de erro \u_i. O segundo estágio utiliza o componente não problemático de X para estimar \beta_i.

O primeiro estágio é

X_i = \pi_0 + \pi_1 Z_i + \nu_i,

onde \pi_0 + \pi_1 Z_i é o componente de  X_i que é explicado por Z_i enquanto  \nu_i é o componente que não pode ser explicado por Z_i e é correlacionado com u_i.

Usando o \widehat{\pi}_0 e \widehat{\pi}_1 estimado via MQO, obtemos o valores previstos de \widehat{X}_i, \ \ i=1,\dots,n. Se Z é um instrumento válido, \widehat{X}_i não é problemático no sentido em que \widehat{X}_i é exógeno na regressão de Y em \widehat{X} feita pelo segundo estágio.

O segundo estágio produz (para o caso de um único instrumento)

(2)    \begin{align*} \widehat{\beta}_1^{TSLS} = \frac{s_{ZY}}{s_{ZX}} = \frac{\frac{1}{n-1}\sum_{i=1}^n(Y_i - \overline{Y})(Z_i - \overline{Z})}{\frac{1}{n-1}\sum_{i=1}^n(X_i - \overline{X})(Z_i - \overline{Z})}, \end{align*}

Aplicação na demanda por Cigarros

Tomamos como base um exemplo clássico de políticas públicas de saúde, que possuem como finalidade a redução do consumo de cigarros por meio da taxação desses produtos. A questão é saber qual a taxação necessária para que haja uma redução no consumo de cigarros.

Uma solução básica para economistas é usar as elasticidades do produto para responder essa questão. Como entretanto não é conhecido essa elasticidade por demanda do produto, é necessário estimar, e é possível realizar através de dados disponíveis do preço (log) e consumo (log) de cigarros e de uma regressão via MQO para alcançar o objetivo.

O problema ocorre quando encontramos um problema de simultaneadade de causalidade entre a demanda e oferta de cigarro. Para solucionar o problema, é possível utilizar variáveis instrumentais para solucionar o caso.

O dataset CigarettesSW , disponível no pacote {AER}, possui dados que contém observações do consumo de cigarros e outros indicadores economicos dos 48 estado federativos do EUA de 1985a 1995, os dados são disponível na forma de dados em painel.

Para obter o código de importação do dataset, da construção do modelo e também dos códigos subsequentes, faça parte do Clube AM, o repositório especial da Análise Macro.

Utilizando o R, especificamente o pacote a função ivreg do pacote {AER}, conseguimos estimar  a seguinte equação

(3)    \begin{align*} \log(Q_i^{cigarros}) = \beta_0 + \beta_1 \log(P_i^{cigarros}) + u_i, \end{align*}

, tomando como variável instrumental a porção da carga de taxação dos cigarros, obtidos do imposto sobre o consumo.

Como resultado é obtido o seguinte resultado:

________________________________________________

Quer se aprofundar no assunto?

Alunos da trilha de Ciência de dados para Economia e Finanças podem aprender a como construir projetos que envolvem dados reais usando modelos econométricos e de Machine Learning com o R.

Referências

Stock, J.H. e Watson, M.W. (2007). Introduction to Econometrics, 2nd ed. Boston: Addison Wesley.

Hanck, C.; Arnold, M., Gerber, A.; Schmelzer, M.. Introduction to Econometrics with R. Acessado em: "https://www.econometrics-with-r.org/index.html".

Compartilhe esse artigo

Facebook
Twitter
LinkedIn
WhatsApp
Telegram
Email
Print

Comente o que achou desse artigo

Outros artigos relacionados

Como planejar um pipeline de previsão macroeconômica: da coleta ao dashboard

Montar um pipeline de previsão macroeconômica não é apenas uma tarefa técnica — é um exercício de integração entre dados, modelos e automação. Neste post, apresento uma visão geral de como estruturar esse processo de ponta a ponta, da coleta de dados até a construção de um dashboard interativo, que exibe previsões automatizadas de inflação, câmbio, PIB e taxa Selic.

Coletando e integrando dados do BCB, IBGE e IPEA de forma automatizada

Quem trabalha com modelagem e previsão macroeconômica sabe o quanto é demorado reunir dados de diferentes fontes — Banco Central, IBGE, IPEA, FRED, IFI... Cada um com sua API, formato, frequência e estrutura. Esse gargalo de coleta e padronização consome tempo que poderia estar sendo usado na análise, nos modelos ou na comunicação dos resultados.

Foi exatamente por isso que criamos uma rotina de coleta automatizada, que busca, trata e organiza séries temporais econômicas diretamente das APIs oficiais, pronta para ser integrada a pipelines de previsão, dashboards ou agentes de IA econometristas.

Criando operações SQL com IA Generativa no R com querychat

No universo da análise de dados, a velocidade para obter respostas é um diferencial competitivo. Frequentemente, uma simples pergunta de negócio — “Qual foi nosso produto mais vendido no último trimestre na região Nordeste?” — inicia um processo que envolve abrir o RStudio, escrever código dplyr ou SQL, executar e, finalmente, obter a resposta. E se pudéssemos simplesmente perguntar isso aos nossos dados em português, diretamente no nosso dashboard Shiny?

Boletim AM

Receba diretamente em seu e-mail gratuitamente nossas promoções especiais e conteúdos exclusivos sobre Análise de Dados!

Boletim AM

Receba diretamente em seu e-mail gratuitamente nossas promoções especiais e conteúdos exclusivos sobre Análise de Dados!

como podemos ajudar?

Preencha os seus dados abaixo e fale conosco no WhatsApp

Boletim AM

Preencha o formulário abaixo para receber nossos boletins semanais diretamente em seu e-mail.