aula 03 - uspminúsculas: a é diferente de a! otdos os nomes do stata estão em minúsculas. os...
TRANSCRIPT
![Page 1: Aula 03 - USPminúsculas: a é diferente de A! oTdos os nomes do Stata estão em minúsculas. Os nomes podem ser formados por 1 a 32 letras, dígitos e/ou underscores, começando com](https://reader030.vdocuments.mx/reader030/viewer/2022040322/5e5f2eb16ddcdf53c13f890b/html5/thumbnails/1.jpg)
STATA
Aula 03Bibliogra�a: Apresentação
Cláudio R. Lucinda
FEA-RP/USP
Cláudio R. Lucinda FEA-RP/USP
Aula 03
![Page 2: Aula 03 - USPminúsculas: a é diferente de A! oTdos os nomes do Stata estão em minúsculas. Os nomes podem ser formados por 1 a 32 letras, dígitos e/ou underscores, começando com](https://reader030.vdocuments.mx/reader030/viewer/2022040322/5e5f2eb16ddcdf53c13f890b/html5/thumbnails/2.jpg)
STATA
Objetivos da Aula
1 STATA
Cláudio R. Lucinda FEA-RP/USP
Aula 03
![Page 3: Aula 03 - USPminúsculas: a é diferente de A! oTdos os nomes do Stata estão em minúsculas. Os nomes podem ser formados por 1 a 32 letras, dígitos e/ou underscores, começando com](https://reader030.vdocuments.mx/reader030/viewer/2022040322/5e5f2eb16ddcdf53c13f890b/html5/thumbnails/3.jpg)
STATA
STATA
Quatro janelas são apresentadas quando o STATA é iniciado.São elas:
Review: janela onde são armazenados os comandosVariables: janela que apresenta a lista das variáveis do bancode dados ativoStata Results: janela que mostra os resultadosStata Command: janela onde os comandos do STATA devemser digitados
Cláudio R. Lucinda FEA-RP/USP
Aula 03
![Page 4: Aula 03 - USPminúsculas: a é diferente de A! oTdos os nomes do Stata estão em minúsculas. Os nomes podem ser formados por 1 a 32 letras, dígitos e/ou underscores, começando com](https://reader030.vdocuments.mx/reader030/viewer/2022040322/5e5f2eb16ddcdf53c13f890b/html5/thumbnails/4.jpg)
STATA
STATA - Interface
O menu está disponível na primeira linha e possui os recursos:
File Edit Prefs Data Graphics Statistics Window e Help
Por exemplo, o menu "HELP -> SEARCH" é utilizado para
procurar ajuda sobre comandos do STATA.
Cláudio R. Lucinda FEA-RP/USP
Aula 03
![Page 5: Aula 03 - USPminúsculas: a é diferente de A! oTdos os nomes do Stata estão em minúsculas. Os nomes podem ser formados por 1 a 32 letras, dígitos e/ou underscores, começando com](https://reader030.vdocuments.mx/reader030/viewer/2022040322/5e5f2eb16ddcdf53c13f890b/html5/thumbnails/5.jpg)
STATA
Stata (III)
Na segunda linha encontra-se a Barra de Ferramentas com os ícones:
(1) Open (use): Carrega ou abre um banco de dados no formato doSTATA (dta).(2) Save: Salva um arquivo no formato do STATA (dta).(3) Print Results: Imprime a janela de resultados.(4) Begin Log: Carrega, abre ou cria um arquivo do tipo ".log" ou".smcl".(5) Start Viewer: Exibe a tela de ajuda (Help) em primeiro plano.(6) Bring Results Window to Front: Exibe a tela dos resultados emprimeiro plano.(7) Bring Graph Window to Front: Exibe a tela com o grá�co em primeiroplano.(8) Do-�le Editor: Edita um arquivo de comandos (arquivo tipo ".do").(9) Data Editor: Edita o arquivo de dados que está sendo utilizado.(10) Data Browser: Visualiza o arquivo de dados que está sendo utilizado.(11) Clear: prossegue a execução do comando.(12) Break: Interrompe a execução de uma tarefa ou comando.
Cláudio R. Lucinda FEA-RP/USP
Aula 03
![Page 6: Aula 03 - USPminúsculas: a é diferente de A! oTdos os nomes do Stata estão em minúsculas. Os nomes podem ser formados por 1 a 32 letras, dígitos e/ou underscores, começando com](https://reader030.vdocuments.mx/reader030/viewer/2022040322/5e5f2eb16ddcdf53c13f890b/html5/thumbnails/6.jpg)
STATA
Stata (IV)
Tipos de Arquivo:
.ado arquivos programa "do-�les"
.dct arquivos ASCII , arquivo dicionário
.do do-�le
.dta arquivos de dados formato do STATA
.gph arquivos grá�cos
.log ou .smcl arquivos textos com os resultados
.out arquivos para impressão
.raw arquivos ASCII arquivos de dados
.sum arquivos controle de rede
Cláudio R. Lucinda FEA-RP/USP
Aula 03
![Page 7: Aula 03 - USPminúsculas: a é diferente de A! oTdos os nomes do Stata estão em minúsculas. Os nomes podem ser formados por 1 a 32 letras, dígitos e/ou underscores, começando com](https://reader030.vdocuments.mx/reader030/viewer/2022040322/5e5f2eb16ddcdf53c13f890b/html5/thumbnails/7.jpg)
STATA
Linha de Comando vs. Scripts
Existe uma tendência de tentarmos executar tudo ou porcliques no mouse ou escrevendo os comandos na linha decomando e apertando enter.
RESISTAM A ESTA TENDÊNCIA!
Utilizem sempre o Editor de do-�le do Stata!!!!
Porque:
Vocês podem reaproveitar o códigoVocês sabem e lembram exatamente o que �zeramE podem descobrir formas mais e�cientes de fazer o que�zeram
Na hora de salvar, será gerado um arquivo com a extensão .do
Cláudio R. Lucinda FEA-RP/USP
Aula 03
![Page 8: Aula 03 - USPminúsculas: a é diferente de A! oTdos os nomes do Stata estão em minúsculas. Os nomes podem ser formados por 1 a 32 letras, dígitos e/ou underscores, começando com](https://reader030.vdocuments.mx/reader030/viewer/2022040322/5e5f2eb16ddcdf53c13f890b/html5/thumbnails/8.jpg)
STATA
Do-Files
Comandos Importantes no Começo de um Do-�le:
clear: Limpa o que está na memóriaset more off,permanently: Evita que você tenha que clicarna janela toda vez que a rolagem ocupa uma tela inteiraset mem: Para algumas versões do Stata, ele determina aalocação de memória ao processo do Stata � As versões maisrecentes não tem este comando mais � o Stata ajustadinamicamente a chamada de memória (você tem que estipularo valor!)set matsize: Estipula o tamanho máximo da matriz a serutilizada em comandos � Dependendo da versão, o valormáximo que você pode estipular pode ser maior ou menor.cd "C:.."Estipula onde estão os seus arquivos
Cláudio R. Lucinda FEA-RP/USP
Aula 03
![Page 9: Aula 03 - USPminúsculas: a é diferente de A! oTdos os nomes do Stata estão em minúsculas. Os nomes podem ser formados por 1 a 32 letras, dígitos e/ou underscores, começando com](https://reader030.vdocuments.mx/reader030/viewer/2022040322/5e5f2eb16ddcdf53c13f890b/html5/thumbnails/9.jpg)
STATA
Variáveis vs. Macros
O Stata tem uma distinção muito precisa entre variáveis � quesão os dados que você colocou no programa � e o que elechama de �macros�, que são as coisas que existem apenas nocontexto de um do-�le (e que são importantíssimos para evitarmontilhões de Ctrl-C+Ctrl+V com todos os erros quecostumam aparecer).
Entre as macros, existe uma distinção entre:
Locais: São coisas que existem somente no contexto de umarodada do do-�le. Estas coisas precisam ser declaradasexplicitamente, por exemplo local i=5 cria uma variável localchamada �i� com o valor de 5. Ela pode ser usada em outroslugares no do-�le da seguinte forma: display "Este é o
meu local `i'" (�quem espertos que o local tem que sercercado por um acento grave antes e um apóstrofo depois)
Cláudio R. Lucinda FEA-RP/USP
Aula 03
![Page 10: Aula 03 - USPminúsculas: a é diferente de A! oTdos os nomes do Stata estão em minúsculas. Os nomes podem ser formados por 1 a 32 letras, dígitos e/ou underscores, começando com](https://reader030.vdocuments.mx/reader030/viewer/2022040322/5e5f2eb16ddcdf53c13f890b/html5/thumbnails/10.jpg)
STATA
Globais
Globais são o outro tipo de macros.
Diferentemente das locais, as globais existemindependentemente da execução do do-�le. Enquanto estiverna mesma seção do Stata, ela vai existir.
Você declara a global da seguinte forma global i=5 e elapode ser usada da seguinte forma display "este é o meu
global $i"
Cláudio R. Lucinda FEA-RP/USP
Aula 03
![Page 11: Aula 03 - USPminúsculas: a é diferente de A! oTdos os nomes do Stata estão em minúsculas. Os nomes podem ser formados por 1 a 32 letras, dígitos e/ou underscores, começando com](https://reader030.vdocuments.mx/reader030/viewer/2022040322/5e5f2eb16ddcdf53c13f890b/html5/thumbnails/11.jpg)
STATA
Importando dados no Stata
insheet - Imputar dado de uma base que foi criada em umaplanilha ou em algum programa que usou vírgula ou tab paraseparar os dados.
infix � Leitura de dados em formato �xo. A coluna tem umformato �xo. Por exemplo, as colunas de 1 a 10 é o nome, 11-12 idade. Não há necessidade de ter delimitador entre asvariáveis. De�nir as colunas que aparecem em cada entrada devariável.
use � Abre arquivos formato nativo do Stata (.dta)
Cláudio R. Lucinda FEA-RP/USP
Aula 03
![Page 12: Aula 03 - USPminúsculas: a é diferente de A! oTdos os nomes do Stata estão em minúsculas. Os nomes podem ser formados por 1 a 32 letras, dígitos e/ou underscores, começando com](https://reader030.vdocuments.mx/reader030/viewer/2022040322/5e5f2eb16ddcdf53c13f890b/html5/thumbnails/12.jpg)
STATA
Abreviações
Uma regra geral no Stata é que você pode abreviar oscomandos e nomes de variáveis desde que o Stata não seconfunda com o que você deseja fazer.
Por exemplo, se você tiver as variáveis income1 e inkvar2 emseu conjunto de dados, o Stata entenderá que inc é a variávelincome1, mas não seria capaz de decidir se in signi�caincome1 ou inkvar1. Se você realmente quiser especi�cartodas as variáveis que começam com �in,� é possível usar umaexpressão com curinga ( in*).Tem um monte de alternativas, é só colocar help varlist.
Cláudio R. Lucinda FEA-RP/USP
Aula 03
![Page 13: Aula 03 - USPminúsculas: a é diferente de A! oTdos os nomes do Stata estão em minúsculas. Os nomes podem ser formados por 1 a 32 letras, dígitos e/ou underscores, começando com](https://reader030.vdocuments.mx/reader030/viewer/2022040322/5e5f2eb16ddcdf53c13f890b/html5/thumbnails/13.jpg)
STATA
Arquivos de Log
O comando log using filename especi�ca que todos oscomandos que são inseridos a partir do teclado, mais a maioriados resultados produzidos, são salvos em um arquivo de nomefilename.scml.
Dessa maneira, você pode salvar o resultado e revisá-lo.Infelizmente (a meu ver), o Stata v. 7 produz como padrãoum arquivo de log que é uma versão não convencional de html.
Portanto, para traduzir um arquivo de log em algo que possaser lido com mais facilidade, você precisará executar ocomando translate. É possível pular esta etapa ao digitarlog using filename, text.
Cláudio R. Lucinda FEA-RP/USP
Aula 03
![Page 14: Aula 03 - USPminúsculas: a é diferente de A! oTdos os nomes do Stata estão em minúsculas. Os nomes podem ser formados por 1 a 32 letras, dígitos e/ou underscores, começando com](https://reader030.vdocuments.mx/reader030/viewer/2022040322/5e5f2eb16ddcdf53c13f890b/html5/thumbnails/14.jpg)
STATA
Sintaxe do Stata
O Stata possui uma sintaxe poderosa e consistente. Comalgumas exceções, a forma básica é:
[by varlist1:] command [varlist2] [weight] [if
expr2] [in range] [,options]
Exemplos de comandos do Stata:
summarize age
regress income educ exp sex
tabulate sex edu if age>25
tabulate sex edu,no freq cell chi2
by cohort: tabulate sex edu
Cláudio R. Lucinda FEA-RP/USP
Aula 03
![Page 15: Aula 03 - USPminúsculas: a é diferente de A! oTdos os nomes do Stata estão em minúsculas. Os nomes podem ser formados por 1 a 32 letras, dígitos e/ou underscores, começando com](https://reader030.vdocuments.mx/reader030/viewer/2022040322/5e5f2eb16ddcdf53c13f890b/html5/thumbnails/15.jpg)
STATA
Sintaxe do Stata (II):
No diagrama de sintaxe exibido acima, as partes opcionaisestão dentro de colchetes [ ].by varlist1: requisita uma análise separada para cadavalor de varlist1:As partes opcionais [if expr2] [in range] restringem oconjunto de observações sobre o qual o comando opera. Elespodem ser colocados em qualquer ordem.Um conjunto de observações é referido na forma de # ou#/#; # representa um número ou l (ou seja, a letra L),signi�cando a última observação. Por exemplo, in 1/10
signi�ca �apenas para as dez primeiras observações;� in l
signi�ca apenas a última observação; -5/l signi�ca as últimas5 observações.Não discutimos pesos aqui.
Cláudio R. Lucinda FEA-RP/USP
Aula 03
![Page 16: Aula 03 - USPminúsculas: a é diferente de A! oTdos os nomes do Stata estão em minúsculas. Os nomes podem ser formados por 1 a 32 letras, dígitos e/ou underscores, começando com](https://reader030.vdocuments.mx/reader030/viewer/2022040322/5e5f2eb16ddcdf53c13f890b/html5/thumbnails/16.jpg)
STATA
Sintaxe do Stata (III):
Observe que uma vírgula é obrigatória antes das opções. Namaioria dos casos pode haver no máximo uma vírgula(algumas funções separam argumentos usando vírgulas, maselas são raras).A linha que começar com * é ignorada. Em um arquivo ".do",qualquer texto entre /* e */ é considerado um comentário.Eles precisam estar na mesma linha: /* */ pode ser usadopara fazer uma nova linha invisível no Stata.Como padrão, as linhas de comando terminam com ENTER(retorno do carro). Em um arquivo ".do" (e somente em umarquivo ".do"), você pode alterar o separador de comandospara �;� por #delimit ; , enquanto o comando #delimit
cr leva-o de volta para o retorno do carro.Outra alternativa mais esperta é usar � ///� (espaço e trêsbarras)Cláudio R. Lucinda FEA-RP/USP
Aula 03
![Page 17: Aula 03 - USPminúsculas: a é diferente de A! oTdos os nomes do Stata estão em minúsculas. Os nomes podem ser formados por 1 a 32 letras, dígitos e/ou underscores, começando com](https://reader030.vdocuments.mx/reader030/viewer/2022040322/5e5f2eb16ddcdf53c13f890b/html5/thumbnails/17.jpg)
STATA
Sintaxe do Stata (IV):
A sintaxe faz diferenciação de letras MAIÚSCULAS eminúsculas: a é diferente de A!
Todos os nomes do Stata estão em minúsculas.
Os nomes podem ser formados por 1 a 32 letras, dígitos e/ouunderscores, começando com uma letra. Para facilitar acompatibilidade com versões anteriores do Stata, é uma boaidéia manter os nomes com 8 ou menos caracteres.
O Stata suporta diferentes tipos de variáveis: inteiros (bye, int,long) números reais aproximados (�oat, double), datas estrings alfa-numéricas. O padrão é �oat.
Cláudio R. Lucinda FEA-RP/USP
Aula 03
![Page 18: Aula 03 - USPminúsculas: a é diferente de A! oTdos os nomes do Stata estão em minúsculas. Os nomes podem ser formados por 1 a 32 letras, dígitos e/ou underscores, começando com](https://reader030.vdocuments.mx/reader030/viewer/2022040322/5e5f2eb16ddcdf53c13f890b/html5/thumbnails/18.jpg)
STATA
Sintaxe do Stata (V):
Muitos nomes de sistema começam com _. Por exemplo:
_n número da observação corrente
_N número total de observações
_all todas as variáveis
_b vetor dos coe�cientes de regressão
_se vetor dos erros-padrão dos coe�cientes de regressão
Cláudio R. Lucinda FEA-RP/USP
Aula 03
![Page 19: Aula 03 - USPminúsculas: a é diferente de A! oTdos os nomes do Stata estão em minúsculas. Os nomes podem ser formados por 1 a 32 letras, dígitos e/ou underscores, começando com](https://reader030.vdocuments.mx/reader030/viewer/2022040322/5e5f2eb16ddcdf53c13f890b/html5/thumbnails/19.jpg)
STATA
Gerando Variáveis no Stata:
Ao contrário da maioria dos pacotes estatísticos, há diferentescomandos para de�nir novas variáveis (generate) e paramodi�car as variáveis existentes (replace).
tabulate pode ser usado para fazer variáveis dummy,chamadas de variáveis indicadoras pelo Stata.
O pre�xo xi: pode ser usado para gerar essas dummies dentrode um comando de forma automática
As expressões Stata são bastante poderosas: há um bomconjunto de funções e a possibilidade de mistura de expressõeslógicas e numéricas, como está explicado abaixo.
Cláudio R. Lucinda FEA-RP/USP
Aula 03
![Page 20: Aula 03 - USPminúsculas: a é diferente de A! oTdos os nomes do Stata estão em minúsculas. Os nomes podem ser formados por 1 a 32 letras, dígitos e/ou underscores, começando com](https://reader030.vdocuments.mx/reader030/viewer/2022040322/5e5f2eb16ddcdf53c13f890b/html5/thumbnails/20.jpg)
STATA
Variáveis no Stata (II):
Para alterar os valores de uma variável discreta, você podetambém usar o comando recode.
Eis um exemplo:
recode xyz 1=2 2=1 *=3
Para a variável xyz, este comando substitui 1 por 2, 2 por 1 etudo por 3.
Veja três exemplos de generate:
gen laginc = inc[_n-1]
gen loginc = log(inc)
gen hiinc = inc > 100000
Cláudio R. Lucinda FEA-RP/USP
Aula 03
![Page 21: Aula 03 - USPminúsculas: a é diferente de A! oTdos os nomes do Stata estão em minúsculas. Os nomes podem ser formados por 1 a 32 letras, dígitos e/ou underscores, começando com](https://reader030.vdocuments.mx/reader030/viewer/2022040322/5e5f2eb16ddcdf53c13f890b/html5/thumbnails/21.jpg)
STATA
Programando Loops no Stata
Quando você tem uma tarefa repetitiva, o uso de um loopajuda a reduzir o tempo de programação e ajuda a evitar errosde programação (sempre aparecem quando usamos muitoCtrl+C e Ctrl+V)
Conceito básico: Quando você programa um loop, você temque dizer ao Stata três coisas:
O que você quer fazer repetitivamenteQuantas vezes você precisa repetirO que vai mudar cada vez
Cláudio R. Lucinda FEA-RP/USP
Aula 03
![Page 22: Aula 03 - USPminúsculas: a é diferente de A! oTdos os nomes do Stata estão em minúsculas. Os nomes podem ser formados por 1 a 32 letras, dígitos e/ou underscores, começando com](https://reader030.vdocuments.mx/reader030/viewer/2022040322/5e5f2eb16ddcdf53c13f890b/html5/thumbnails/22.jpg)
STATA
Exemplo
forvalues x = 1/5 {
display "`x' + 1 = "
display `x' + 1
display ""
}
forvalues bottom = 20(5)45 {
local top = `bottom' + 4
gen age`bottom'to`top' = 0
replace age`bottom'to`top' = 1 if age >=`bottom' \\\
& age <= `top'
}
Cláudio R. Lucinda FEA-RP/USP
Aula 03
![Page 23: Aula 03 - USPminúsculas: a é diferente de A! oTdos os nomes do Stata estão em minúsculas. Os nomes podem ser formados por 1 a 32 letras, dígitos e/ou underscores, começando com](https://reader030.vdocuments.mx/reader030/viewer/2022040322/5e5f2eb16ddcdf53c13f890b/html5/thumbnails/23.jpg)
STATA
Forvalues
generate kgwt1 = wt1/2.2
generate kgwt2 = wt2/2.2
generate kgwt3 = wt3/2.2
generate kgwt4 = wt4/2.2
generate kgwt5 = wt5/2.2
* Ou...
foreach var of varlist wt1-wt5 {
generate kg`var' = `var'/2.2
}
Cláudio R. Lucinda FEA-RP/USP
Aula 03
![Page 24: Aula 03 - USPminúsculas: a é diferente de A! oTdos os nomes do Stata estão em minúsculas. Os nomes podem ser formados por 1 a 32 letras, dígitos e/ou underscores, começando com](https://reader030.vdocuments.mx/reader030/viewer/2022040322/5e5f2eb16ddcdf53c13f890b/html5/thumbnails/24.jpg)
STATA
Estout
...estimates store mod05estimates store mod06
qui estout mod05 mod06 using "branch04\trunk\Output\mixlogit.tex", ///cells(b(fmt(%6.4f) star) t(par fmt(%6.4f)) ) ///stats(N chi2 ll, labels(`"Observations"' `"LR chi2"' `"Log-Lik."')) ///title(Mixed Logit Results \label{mixlogtab}) ///varlabels(_cons Constant) ///mlabels(, titles span prefix(\multicolumn{@span}{c}{) suffix(})) ///prehead("\begin{table}[htbp]\caption{@title}" "\tiny" ///"\begin{center} " "\begin{tabular}{l*{@M}{rr}}" "\hline \hline") ///posthead("\hline") label collabels(,none) ///prefoot("\hline") postfoot("\hline \hline" ///"\multicolumn{@span}{p{4cm}}{\small\textit{Source:} Authors' ///Calculations. @starlegend}" "\end{tabular}" "\end{center}" "\end{table}") style(tex) ///stardetach order(*_1 *_2 *_3 *_4 *_5 timetime costcost SD:costcost) ///eqlabels(Fixed Random,span prefix(\hline\multicolumn{@span}{c}{) suffix(})) replace
Cláudio R. Lucinda FEA-RP/USP
Aula 03