Tutorial de econometria espacial utilizando o stata

1.381 visualizações

Publicada em

Econometria Espacial

Publicada em: Economia e finanças
0 comentários
3 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
1.381
No SlideShare
0
A partir de incorporações
0
Número de incorporações
4
Ações
Compartilhamentos
0
Downloads
79
Comentários
0
Gostaram
3
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Tutorial de econometria espacial utilizando o stata

  1. 1. Tutorial de econometria espacial utilizando o STATA Dr. Daniel de Abreu Uhr Renan Porn Peres Ricardo Capra Schuch ------------------------------------------------------------------------------------------------------------------ 1. STATA: Análise espacial de dados a) Instalação de pacotes ........................................................................................ 2 b) Baixando e utilizando o Shapefile ...................................................................... 3 i) No Stata ....................................................................................................... 3 ii) No Geoda ................................................................................................... 5 c) Gerando matriz de pesos .................................................................................... 6 i) SPATWMAT ................................................................................................... 6 ii) SPMAT .......................................................................................................... 7 iii) MATA …....................................................................................................... 7 d) Testando a dependência espacial ................................................................... 8 e) Regressão espacial .............................................................................................. 8 i) Especificação do modelo ......................................................................... 8 ii) Modelos de RegressãoEspacial ............................................................... 9 A) Modelos comdefasagens espaciais nos erros e na variável dependente B) Modelos comdefasagemespacial também nas variáveis explicativas C)Regressão Variável Instrumental D) Regressões Espaciais utilizando a matriz gerada no SPATWMAT f) Interpretando as saídas ....................................................................................... 11 -----------------------------------------------------------------------------------------------------------------
  2. 2. a)Instalar os pacotes necessários no STATA: Definindo diretórios e processamento para lidarmos commatrizes espaciais set more off set matsize 1200 cd "C:UsersUserDesktopRS" Para gerar um arquivo txt salvando o que foi feito cap log using "spatialeconometrics", replace Você deveinstalar alguns pacotes que irão ser uteis para rodar os comandos de econometria espacial: ssc install spmap ssc install sppack ssc install shp2dta ssc install mif2dta net install xsmle, all from(http://www.econometrics.it/stata) findit sg162 Observação O pacote sg162 não esta disponível de modo isolado para o Brasil, por isso usamos o comando findit para acha-lo e assim, baixar os pacotes que ele esta contido. Este comando atualiza os demais pacotes já existentes: adoupdate adoupdate, update Baixando malhas geográficas Para qualquer análise espacial é necessárioummapa da área de interesse, assim precisamos baixar estes arquivos shp. de sites como ibge, ipea, etc. que disponibilizam estes arquivospara download. O IBGE oferece uma base de dados completa contendo shapefile de diversos periodos emftp://geoftp.ibge.gov.br/malhas_digitais/
  3. 3. fftp://geoftp.ibge.gov.br/malhas_digitais/municipio_2005/escala_500mil/proj_policonica/arcview_shp/uf/rs/4 3mu500pc.zip Outra opção é o IpeaGEO que já disponibiliza algumas malhas digitais que podem ser baixadas pelo usuário. Visualização dos arquivos Só conseguimos visualizar arquivos .dbf com o programa Openofice http://www.openoffice.org/download i) No STATA: Precisamos colocar o Shapefile (Arquivo.shp) para dentro do Stata (.dta): shp2dta using “diretório do arquivo SHP”, database (exemplo1.dta) coordinates (exemplo2.dta) genid (_ID)
  4. 4. Com isso, colocamos uma base de DTA comas informações do Shape para dentro do sistema do STATA. Temos assim, dois arquivos DTA para esse Shape e um identificador que será útil na plotagem dos mapas. Pareando com seus dados: Precisamos que o banco de dados esteja pareado com o banco gerado pelo arquivo Shape. Para isso: Nos interessa colocar 4 variáveis no banco exemplo1.dta gerado pelo arquivo shape para o banco de variáveis (dbRS.dta). Estas são codigo id longitude e latitude. Assim salvamos estas 4 váriaveis emuma arquivo para juntarmos como o banco de dados. use "C:UsersUserDesktopRSbanco.dta" merge m:m codigo using "C:UsersUserDesktopRScord.dta" Result # of obs. ----------------------------------------- matched 496 (_merge==3) drop _merge save “"C:UsersUserDesktopRSbase.dta" clear all Assim temos as mesmas variáveis que serão úteis para a criação das matrizes de pesos e para geração de gráficos emambos os bancos: coordRS.dta e base.dta
  5. 5. ii) Gerando a matriz de pesos espaciais através do GEODA: Você deveter o arquivo shape de interessee o software Geoda para isso Carregar Shapefile no Geoda-> Criar Pesos(Create Weights)-> Add Variable-> Código ou Nome da região-> Queen Contiguity -> Create Salve o a matriz de pesos (arquivo.gal) no diretóriode arquivos do STATA. c) Criando Matriz de Pesos Para fazermos inumeras análises espaciais, precisamos cria uma matriz de pesos espaciais. Esta matriz especifica o grau da conexão entre uma unidade espacial com outra. Especifica como unidades i e j se relacionam, um exemplo: são vizinhos? i) SPMAT é um dos comandos para a criação de matrizes contiguas. Para criarmos matrizes por esse comando precisamos importar a shapefile e utilizar o banco de coordenadas gerado por este processo, como já vimos antes. Veja alguns exemplos: spmat cont WC using "C:UsersUserDesktopRScoordRS.dta", id( _ID ) spmat import WG using "C:UsersUserDesktopRS43mu500gc.gal", geoda O comando SPMAT pode ser utilizado para a criação de matrizes distâncias. Veja: spmat idistance WIr _X _Y, id( _ID ) normalize(row) spmat idistance WId _X _Y, id( _ID ) dfunction(dhaversine) Para excluir a matriz gerada usamos o seguinte comando: spmat drop W Exportar a matriz de pesos em dta: spmat save W using "filename.dta" Para visualizar a matriz de pesos devemos salva-la emtxt: spmat export W using "filename.txt" O código de ID na matriz correspondeao do Geoda. Descrição da matriz: spmat summarize WC
  6. 6. spmat sum WC, links detail spmat graph WG Para observarmos os autovalores spmat eigenvalues WC ii) SPATWMAT é um dos comandos mais utilizados para a criação de matrizes. Utiliza as coordenadas do banco de dados para a criação da matriz e conecta todas as unidades, no nosso caso os vizinhos, via distância. Veja: spatwmat, name(W) xcoord(_X) ycoord(_Y) band(0 1) standardize A matriz de pesos, W, é a inversa da distância da matriz padronizada, de modo que a soma é 1. Os itens xcoord e ycoord especifica quais variáveis contema localização em coordenadas das localizações. No item band especificamos a distancia máxima, no nosso exemplo usamos 10 milhas. Vamos dar uma olhada nesta matriz: mat list W Podemos também usar a matriz gerada pelo software Geoda, para isso devemos usar o comando sort _ID Com o objetivo de ordenar conforme a variável _ID do Geoda, que está no banco de dados, pois a matriz gerada a partir do Geoda utiliza a linha em que está o objeto analisado para identificação. spatwmat using "C:UsersUserDesktopRSgeod.dta" ,name(Wg) standardize iii) Para alterarmos uma Matriz: Temos que usar o MATA Passando a Matriz da memória do spmat para a memória do MATA: spmat getmatrix WC A mata: A link útil de operações no mata: http://www.stata.com/support/faqs/data- management/element-by-element-operations-on-matrices/
  7. 7. d) Verificando a dependência espacial: Alguns Gráficos para verificar se os dados estão concentrados Carregando o banco de variáveis: use base, clear Agora, vamos descrever as variáveis de interesse describe _ID furto_veic i) Gerando um mapa de corrupção para o Rio Grande do Sul: spmap furto_veic using coordRS, id(_ID) legend(symy(*2) symx(*2) size(*2)) clnumber(5) fcolor(Greens) legstyle(2) title("Furto de veiculos no Rio Grande do Sul", size(*0.8)) note("Pelotas, Rio Grande do Sul 2014 neighorhood data") O pacote spmap tem muitas opções, aproveitepara checar: help spmap ii) Diagnóstico Espacial A) Teste do Índice de Moran Verificar se as variáveis tem dependência espacial: spatgsa furto_veic, w(Wg) moran B) Teste do Índice Local de Dependência Espacial (LISA): spatlsa furto_veic, w(W) moran id(_ID) sort spatlsa furto_veic, weights(W) moran graph(moran) symbol(id) id( Municipios ) spatlsa furto_veic, w(W) moran id(_ID) map(coordRS.dta) xcoord(_Y) ycoord(_X) savegraph(spmap) Podemos observar que o teste de Moran's I foi significativo, então há dependência espacial.
  8. 8. C) Corrarelogramas emrelação à distância: spatcorr furto_veic, bands(0(1)10) xcoord(_X) ycoord(_Y) spatcorr furto_veic, bands(0(1)10) xcoord(_X) ycoord(_Y) cumulative spatcorr furto_veic, bands(0(1)10) xcoord(_X) ycoord(_Y) graph e) Regressões Espaciais i) Especificando o modelo reg Y Xs, robust Teste diagnóstico sobre os resultados da estimação OLS (dependência espacial): spatdiag, weights(W) Este teste mostra que há um significante efeito espacial e seus resultados vão nos auxiliar na escolha do modelo. ------------------------------------------------------------------------------------------------------------ reg furto_veic valor_adic_bruto carros_passag analfabetismo posse_entorp fundo_mun_segpub deleg_polic_civil penitenciaria, robust Linear regression Number of obs = 496 F( 7, 488) = 894.98 Prob > F = 0.0000 R-squared = 0.9489 Root MSE = 42.461 ----------------------------------------------------------------------------------- | Robust furto_veic | Coef. Std. Err. t P>|t| [95% Conf. Interval] ------------------+---------------------------------------------------------------- valor_adic_bruto | .000037 .0000237 1.56 0.119 -9.52e-06 .0000835 carros_passag | .0052716 .0012398 4.25 0.000 .0028355 .0077077 analfabetismo | .8713579 .3161347 2.76 0.006 .2502048 1.492511 posse_entorp | -.411659 .3012619 -1.37 0.172 -1.00359 .1802716 fundo_mun_segpub | -27.98689 14.73499 -1.90 0.058 -56.93875 .9649602
  9. 9. deleg_polic_civil | -15.99604 2.137453 -7.48 0.000 -20.19579 -11.79629 penitenciaria | -.026953 .0221671 -1.22 0.225 -.0705078 .0166019 _cons | -11.64398 2.65038 -4.39 0.000 -16.85155 -6.436417 ----------------------------------------------------------------------------------- spatdiag, weights(W) Diagnostic tests for spatial dependence in OLS regression Fitted model ------------------------------------------------------------ furto_veic = valor_adic_bruto + carros_passag + analfabetismo + posse_entorp + fundo_mun_segpub + deleg_polic_civil + penitenciaria ------------------------------------------------------------ Weights matrix ------------------------------------------------------------ Name: W Type: Distance-based (inverse distance) Distance band: 0.0 < d <= 1.0 Row-standardized: Yes ------------------------------------------------------------ Diagnostics ------------------------------------------------------------ Test | Statistic df p-value -------------------------------+---------------------------- Spatial error: | Moran's I | 5.950 1 0.000 Lagrange multiplier | 29.974 1 0.000 Robust Lagrange multiplier | 21.559 1 0.000 | Spatial lag: | Lagrange multiplier | 12.441 1 0.000 Robust Lagrange multiplier | 4.025 1 0.045 ------------------------------------------------------------ Ao observar estas saídas percebemos que tanto o erro esta correlacionado com o erro dos vizinhos, bem como a variável dependente esta correlacionada com o furto de veículos dos vizinhos, assim precisamos considerar ambas no modelo.
  10. 10. ii) Modelos de regressão espacial A) Modelos com defasagens espaciais nos erros e na variável dependente Efeito Global do Erro - ex: novo sistema de produção Efeito Local do Erro - ex: poluição local 1) Regressão GMM SAR – Quando não tem erro espacial, emdois estágios. O modelo é Y = dlWy + XB + u, o comando é dado por: spreg gs2sls Y Xs, id(_ID) dlmat(W) het 2) Regressão ML SARAR - Quando não tem erro espacial spreg ml Y Xs, id(_ID) dlmat(W) 3) Regressão GMM SEM – Quando não existe lag espacial poremhá erro espacial autoregressivo. O modelo é u = elWu + v, o comando é dado por: spreg gs2sls Y Xs, id(_ID) elmat(WC) het 4) Regressão ML SEM - Quando não existe lag espacial poremhá erro espacial autoregressivo. spreg ml Y Xs, id(_ID) elmat(W) Neste modelo, os erros associadoscomqualquer observalção são uma média dos erros nas regiões vizinhasmais um componente de erro aleatório. 5) Regressão GMM SARAR (SAC) Neste caso o modelo é dado por Y = dlWy + BX + u, u = elWu + v spreg gs2sls Y Xs, id(_ID) dlmat(WC) elmat(WC) het 6) Regressão ML SARAR (SAC) spreg ml Y Xs, id(_ID) dlmat(WC) elmat(WC) Segundo o modelo um choque na região j afeta todas as outras regiões por intermédio do multiplicador espacial do processo SAR da defasagem espacial, amplificado pelo efeito multiplicador extra proporcionado pelo processo de erro espacial. Convémlembrar que a consequência de não incorporamos os componentes Wy e Wu quando relevantes, gera estimativas viesadas e ineficientes em amostras pequenas e inconsistentes emgrandes amostras.
  11. 11. B) Modelos com defasagem espacial também nas variáveis explicativas. Para utilizarmos esses modelos precisamos gerar umlag espacial em uma variável explicativa: spmat lag double Wcar W carros_passag 1) Modelo Durbin GMM(SDM) – Não tem erro espacial Neste caso o modelo é dado por Y = WY XB + WX + u spreg gs2sls corrupção gini Wgini, id(_ID) dlmat(WC) het 2) Modelo Durbin ML(SDM) No spatial error spreg ml corrupção gini Wgini, id(_ID) dlmat(WC) 3) Regressão Durbin do erro(SDEM)GMM – Semlag espacial na variável dependente. Neste caso o modelo é dado por Y = XB + WX + u, u = elW2u + v spreg gs2sls corrupção gini Wgini, id(_ID) elmat(WC) het 4) Regressão Durbin do erro(SDEM)ML– Semlag espacial na variável dependente. spreg ml corrupção gini Wgini, id(_ID) elmat(WC) 5) Regressão GMM GSM spreg gs2sls corrupção gini Wgini, id(_ID) dlmat(WC) elmat(WC) het 6) Regressão ML GSM spreg ml corrupção gini Wgini, id(_ID) dlmat(WC) elmat(WC) --------------------------------------------------------------- spreg ml furto_veic valor_adic_bruto carros_passag Wcarros analfabetismo Wanalfab posse_entorp fundo_mun_segpub Wfundsp deleg_polic_civil Wpen penitenciaria, id(_ID) dlmat(WC) elmat(WC) spreg ml furto_veic valor_adic_bruto carros_passag analfabetismo posse_entorp fundo_mun_segpub deleg_polic_civil penitenciaria Wcarros Wanalfab Wfundsp Wpen, id(_ID) dlmat(WC) elmat(WC) ------------------------------------------------------------------------------
  12. 12. C) Regressão Variável Instrumental spivreg corrupção (gini = txdesemp), id(_ID) dlmat(WC) elmat(WC) het predict pol D) Regressões Espaciais utilizando a matriz gerada no SPATWMAT O comando spatreg é um pouco limitado, porem é bom saber Modelo de Erro Espacial: spatreg corrupção gini , weights(W) eigenval(E) model(error) Modelo de Lag Espacial: spatreg corrupção gini, weights(W) eigenval(E) model(lag) f) Interpretando as saídas cap log close

×