[ad_1]
Considere um modelo de regressão com a seguinte estrutura causal:
A variável x1
afeta y
direta e indiretamente via x2
. O código R a seguir implementa o modelo e simula um conjunto de dados correspondente.
set.seed(1)
n = 10000
beta1 = 1; beta2=1
x1 = rnorm(n,,1)
x2 = x1+rnorm(n,,1)
y = beta1*x1 + beta2*x2 + rnorm(n,,1)
Suponha que desejemos estimar consistentemente o efeito linear direto beta1
de x1
em y
. Para fazer isso, podemos simplesmente estimar uma regressão linear múltipla, onde adicionamos x2
como uma variável de controle:
## (Intercept) x1 x2
## 0.007553765 0.998331323 1.000934100
Mas o que significa intuitivamente adicionar x2
como variável de controle? O teorema de Frisch-Waugh-Lovell implica que obtemos o mesmo estimador para beta1
como na regressão múltipla acima, pelo seguinte procedimento:
# y.tilde is residual of regression
# y on x2
y.tilde = resid(lm(y~x2))
# x1.tilde is residual of regression
# x1 on x2
x1.tilde = resid(lm(x1~x2))
# Regression y.tilde on x1.tilde
# we get the same estimate for beta1
# as in the multiple regression with x1 and x2
coef(lm(y.tilde ~ x1.tilde))
## (Intercept) x1.tilde
## -5.104062e-17 9.983313e-01
Portanto, controlar x2
significa que regredimos essencialmente as variações residuais de y
e x1
que não pode ser explicado linearmente por x2
um no outro. Até agora, isso parece intuitivo.
O interessante é que se obtém a mesma estimativa para beta1
Também com 1 das duas regressões a seguir abaixo (mas somente a regressão acima também gera erros padrão corretos):
# Approach A
lm(y.tilde ~ x1)
# Approach B
lm(y ~ x1.tilde)
A abordagem A regride a variação residual de y
que não pode ser previsto linearmente por x2
em x1
. A abordagem B regride y
na variação residual de x1
que não pode ser previsto linearmente por x2
.
Apenas uma abordagem produz uma estimativa consistente de beta1
. Adivinhe qual deles…
Vamos checar:
# A: Inconsistent
coef(lm(y.tilde ~ x1))[2]
# B: Consistent
coef(lm(y ~ x1.tilde))[2]
Portanto, apenas a abordagem B funciona. Angrist e Pischke (2009) se referem a ele como anatomia de regressão. Para mim, esse resultado foi um pouco intrigante por muito tempo, porque minha interpretação intuitiva do que significa controlar x2
estava mais de acordo com a abordagem A. Primeiro, quero esclarecer essa intuição e explicar por que a abordagem A não funciona. Depois, quero dar alguma intuição para a abordagem de trabalho B.
Contents
Uma intuição para variáveis de controle e por que a abordagem A falha
Eu tenho intuições diferentes para o que controlar x2
significa na regressão linear:
y = beta0 + beta1*x1 + beta2*x2 + eps
Uma das minhas intuições é a seguinte:
“Controlando por
x2
, subtraímos essencialmente a variação que pode ser explicada linearmente porx2
dey
, ou seja, até um erro de estimativa, subtraímosbeta2*x2
. ”
Essa interpretação sugere que a abordagem A deve funcionar, mas essa abordagem não obtém uma estimativa consistente para beta1
. Então a intuição acima está errada? Não completamente, mas a qualificação “até um erro de estimativa” causa problemas para a abordagem A. Considere o código a seguir.
# Modified approach A
y.tilde2 = y - beta2*x2
coef(lm(y.tilde2 ~x1))[2]
É uma versão modificada da abordagem A. Ele calcula a variação residual y.tilde2
subtraindo diretamente beta2*x2
de y
. Agora temos um estimador consistente de beta1
ao regredir y.tilde2
em x1
.
Mas a abordagem A difere porque subtraímos beta2.hat*x2
de y
Onde beta2.hat
é estimado na regressão do primeiro estágio:
# Same result as original approach A
beta2.hat = coef(lm(y~x2))[2]
beta2.hat # inconsistent estimate of beta2
y.tilde = y-beta2.hat*x2
coef(lm(y.tilde ~x1))[2] # inconsistent estimate of beta1
O problema com a abordagem A é que não estimamos beta2.hat
consistentemente na regressão de y
em x2
. Em vez disso, desde x1
e x2
estão correlacionados, beta2.hat
também captura alguns dos efeitos diretos de x1
em y
. Isso significa em y.tilde
já removemos parte do efeito de x1
em y
que queremos estimar. Portanto, a abordagem A produz um estimador para beta1
isso é tendencioso para 0.
Observação: No cálculo original da abordagem A, também subtraímos a constante estimada da regressão inicial ao calcular y.tilde
, mas isso não afeta o coeficiente de inclinação na regressão do segundo estágio.
Curiosamente, em alguns artigos empíricos, é realizada uma abordagem semelhante à abordagem A, ou seja, primeiro calculamos os resíduos de y
a partir de uma primeira regressão e depois regride esses resíduos em outro conjunto de variáveis explicativas. Mas o cálculo acima mostra que é preciso ter muito cuidado com essa abordagem, pois ela só funciona se a primeira regressão produzir estimativas consistentes.
Vamos considerar um exemplo em que essa abordagem funcionaria. Considere o seguinte modelo modificado:
Agora temos uma variável adicional z
isso afeta x2
mas não está correlacionado com x1
.
z = rnorm(n,,1)
x2 = x1+z+rnorm(n,,1)
y = beta1*x1 + beta2*x2 + rnorm(n,,1)
Agora conduzimos uma variação da abordagem A, onde y.tilde3
são os resíduos de uma regressão variável instrumental de y
em x2
usando z
como instrumento:
library(AER)
reg1 = ivreg(y~x2|z)
coef(reg1)[2] # consistent beta2.hat
y.tilde3 = resid(reg1)
coef(lm(y.tilde3 ~ x1))[2] # consistent beta1.hat
Agora vemos que a regressão y.tilde3
em x1
produz um estimador consistente de beta1
.
Por que a abordagem B funciona
Vamos agora discutir por que a abordagem B funciona. Dada a nossa estrutura causal, acho mais intuitivo discutir primeiro por que uma abordagem semelhante funciona para estimar consistentemente beta2
.
# x2.tilde is residual from regression
# of x2 on x1
x2.tilde = resid(lm(x2~x1))
# consistent estimate of beta2
coef(lm(y ~ x2.tilde))[2]
Aqui eu tenho a seguinte intuição por que funciona. Intuitivamente, para estimar consistentemente o efeito causal da x2
em y
precisamos destilar variação de x2
que não está correlacionado com x1
. Se regredimos x2
em x1
, os resíduos x2.tilde
desta regressão são por construção não correlacionada com x1
. Eles descrevem a variação de x2
que não pode ser previsto linearmente por x1
. Essa é exatamente a variação de x2
necessário estimar consistentemente beta2
.
O procedimento equivalente também trabalha para estimar beta1
consistentemente:
x1.tilde = resid(lm(x1~x2))
coef(lm(y ~ x1.tilde))[2] # consistent
Então, mesmo que x2
não influencia x1
podemos igualmente destilar em x1.tilde
a variação relevante em x1
que não está correlacionado com x2
. Para a anatomia da regressão, é irrelevante qual direção causal gerou a correlação entre x1
e x2
.
Acho incrível que, ao longo de muitos anos, ainda aprenda novas intuições para conceitos econométricos básicos, como a regressão linear múltipla. Atualmente, acho que a introdução de regressão múltipla via teorema de Frisch-Waugh-Lovell e a anatomia da regressão pode ser muito mais útil para construir intuição em um curso empírico aplicado do que cobrir a álgebra matricial. (É claro que é uma história diferente se você quiser provar teoremas econométricos.) Para um exemplo de um curso, você pode conferir o material on-line aberto (vídeos, questionários, exercícios interativos R) do meu curso Análise de Mercado com Econometria e aprendizado de máquina.
Referências
Angrist, Joshua D. e Jörn-Steffen Pischke. 2009. Econometria na maior parte inofensiva: companheiro de um empirista.
Relacionado
[ad_2]