Um bom recurso da diferença entre diferenças (DiD) é que você não precisa de dados do painel para isso. Dado que o tratamento ocorre em algum tipo de nível de agregação (nas cidades dos seus casos), você só precisa amostrar indivíduos aleatórios das cidades antes e depois do tratamento. Isto permite estimar
yi s t= Ag+ Bt+ βDst+ cXi st+ϵi s t
e obtenha o efeito causal do tratamento como a diferença de resultado pós-pré esperada para o tratado menos a diferença de resultado pós-pré esperada para o controle.
yeu t= αEu+ Bt+ βDeu t+ c Xeu t+ ϵeu t
Deu t de Steve Pischke.
UMAg
Aqui está um exemplo de código que mostra que esse é o caso. Eu uso o Stata, mas você pode replicar isso no pacote estatístico de sua escolha. Os "indivíduos" aqui são, na verdade, países, mas ainda estão agrupados de acordo com algum indicador de tratamento.
* load the data set (requires an internet connection)
use "http://dss.princeton.edu/training/Panel101.dta"
* generate the time and treatment group indicators and their interaction
gen time = (year>=1994) & !missing(year)
gen treated = (country>4) & !missing(country)
gen did = time*treated
* do the standard DiD regression
reg y_bin time treated did
------------------------------------------------------------------------------
y_bin | Coef. Std. Err. t P>|t| [95% Conf. Interval]
-------------+----------------------------------------------------------------
time | .375 .1212795 3.09 0.003 .1328576 .6171424
treated | .4166667 .1434998 2.90 0.005 .13016 .7031734
did | -.4027778 .1852575 -2.17 0.033 -.7726563 -.0328992
_cons | .5 .0939427 5.32 0.000 .3124373 .6875627
------------------------------------------------------------------------------
* now repeat the same regression but also including country fixed effects
areg y_bin did time treated, a(country)
------------------------------------------------------------------------------
y_bin | Coef. Std. Err. t P>|t| [95% Conf. Interval]
-------------+----------------------------------------------------------------
time | .375 .120084 3.12 0.003 .1348773 .6151227
treated | 0 (omitted)
did | -.4027778 .1834313 -2.20 0.032 -.7695713 -.0359843
_cons | .6785714 .070314 9.65 0.000 .53797 .8191729
-------------+----------------------------------------------------------------
Portanto, você vê que o coeficiente de DiD permanece o mesmo quando os efeitos fixos individuais são incluídos ( areg
é um dos comandos de estimativa de efeitos fixos disponíveis no Stata). Os erros padrão são um pouco mais rigorosos e nosso indicador de tratamento original foi absorvido pelos efeitos fixos individuais e, portanto, caiu na regressão.
Em resposta ao comentário
, mencionei o exemplo de Pischke para mostrar quando as pessoas usam efeitos fixos individuais em vez de um indicador de grupo de tratamento. Sua configuração tem uma estrutura de grupo bem definida, de modo que a maneira como você escreveu seu modelo está perfeitamente bem. Os erros padrão devem ser agrupados no nível da cidade, ou seja, o nível de agregação em que o tratamento ocorre (eu não fiz isso no código de exemplo, mas nas configurações de DiD, os erros padrão precisam ser corrigidos, conforme demonstrado pelo artigo de Bertrand et al. )
Ds tst
c = [ E( yi s t| s=1,t=1)-E( yi s t| s=1,t=0)]- [ E( yi s t| s=0,t=1)-E( yi s t| s=0,t=0)]
E( yi s t| s=1,t=1)E( yi s t| s=0,t=1). Para deixar claro por que a identificação vem das diferenças de grupo ao longo do tempo e não dos motores, você pode visualizá-lo com um gráfico simples. Suponha que a mudança no resultado seja realmente apenas por causa do tratamento e que tenha um efeito contemporâneo. Se tivermos um indivíduo que mora em uma cidade tratada após o início do tratamento, mas depois se muda para uma cidade de controle, seu resultado deve voltar ao que era antes de ser tratado. Isso é mostrado no gráfico estilizado abaixo.
Você ainda pode querer pensar em motores por outros motivos. Por exemplo, se o tratamento tiver um efeito duradouro (ou seja, ainda afeta o resultado, mesmo que o indivíduo tenha se mudado)