Sie sind auf Seite 1von 10

REFERNCIA RPIDA PARA TRENAMENTO EM STATA: Comandos importantes em Stata

Este documento pode ser usado como referncia durante e aps o treinamento em Stata, particularmente para os vdeos que tratam de descrio e anlises de dados. Vrios comandos podem ser especificados com abreviaes (por exemplo, describe,des, e de so apropriados indicar describe) e exemplos sero apresentados para esclarecer alguns comandos. Texto em courier new vermelho refere-se a um comando a ser digitado na janela de comandos do programa Stata. Texto em courier new vermelho itlico refere-se informao a ser digitada que varia com o banco de dados/arquivo do usurio. varivel = a varivel de interesse var# = cada varivel de interesse. Na maioria dos casos, opes adicionais podem seguir comandos iniciais para funes e operaes mais especficos/detalhados. Apenas alguns exemplos de linhas de comandos aparecem neste documento.

Exemplo do interface de Stata

Traduzido e adaptado de fonte orginal: dataninja.wordpress.com Contribuidores: Ronnie Babigumira, Jamie Cotta e Carolina de Souza Costa

I. Iniciando com Stata I.1. Uso geral Stata sensvel ao tipo de Caixa (maiscula e minscula so interpretadas como letras diferentes) Usar aspas ... ao redor de informao string (texto) Usar == para uma equao logica (if x==1) Usar /// para continuar uma linha com mais de 80 caracteres Usar / para indicar todos os valores no intervalo de x a y (i.e. 1 / 10 representa todos os valores de 1 a 10) Usar #delimit; para que os comandos sejam delimitados com o ; no arquivo .do: (ver seo I.6. para arquivos .do)
(facilita uma organizao visual melhor de comandos, em vez de ter linhas de comandos muito longas)

Usar #delimitcr; para especificar que o delimitador seja o ENTER. Para inserir comentrios en arquivos .do e programas se pode 1) comear a linha com um asterisco (*) 2) inserir o comentrio entre /* e */ ao incio ou no meio da linha 3) comear o comentrio com // ao incio o ao final da linha 4) comear o comentario com /// Exemplo 1: comando1 * (seu comentrio aqui, esta linha no ser considerada) comando2 comando3 Exemplo 2: comando1 /*(seu comentrio aqu, o texto entre os asteriscos no ser considerada) */ comando2 comando3 Exemplo 3: comando1 // (seu comentrio aqui) comando2 comando3 // (outro comentrio aqu, o resto da linha no ser considerada) comando4 Exemplo 4: comando1 comando2 /// (outro comentrio aqu, esta linha debe ser ligada prxima linha) comando3
Sempre se necesita incluir um o mais espaos antes das barras // e ///.

Traduzido e adaptado de fonte orginal: dataninja.wordpress.com Contribuidores: Ronnie Babigumira, Jamie Cotta e Carolina de Souza Costa

I.2. Familiarizando-se com sintaxe de Comandos [by varlist] comando [varlist] [=exp] [in range] [weight] [,options] varlist' faz que o Stata repita o comando para cada sub-amostra dos dados para a qual valores das variveis no varlist sejam iguais. Nos exemplos apresentados aqui substituimos varlist com variable. Se nenhum variable est incluido, Stata assume _all, para incluir todas as varivies no banco de dados. if exp restringe o escopo do comando aos casos para os quais o exp (a expresso) verdadeira. in range restringe o escopo de um comando a um intervalo especfico de observaes. weight indica o peso alocado a cada observao. options: muitos comandos tem opes adicionais e '[options]' o mtodo para invocar estas opes por comandos especficos. I.3. Digitar comandos rapidamente e consertar erros (Windows/Mac Unix) Para recuperar a linha de comandos anterior: Page Up Ctrl-R Clicar em Page Up (ou Ctrl-R) vrias vezes para retornar decrescentemente pelas linhas de comandos anteriores. Para passar adiante pelas linhas de comandos anteriores: Page Down Ctrl-B Para visualizar uma lista das ltimas 5 linhas de comandos: #review #review Para visualizar as n linhas de comandos anteriores: #review n # review n Para visualizar a na linha de comando: n Ctrl-Home n Ctrl-W I.4. Editar linhas de comando Usar a seta esquerda e direita para mudar o cursor. Para mudar o cursor at o incio da linha: Home Ctrl-K Para mudar o cursor at o final da linha: End Ctrl-P Para deletar o caracter na localizao do cursor: Delete Ctrl-D Digitando substituir caracteres existentes Para inserir caracteres em frente ao cursor sem substituir: Insert Ctrl-E Para voltar ao modo de substituio: Insert Ctrl-E Para deletar uma linha e recomear: Esc Ctrl-U Para cortar a linha na localizao do cursor: Ctrl-End Ctrl-X I.5. Visualisar e modificar diretrio (pwd, cd) Visualisar em qual diretrio Stata se est procurando/salvando arquivos: pwd (pwd = print working directory) Mudar de diretrio: cd (cd = change directory) Visualisar, na janela de resultados, todos os arquivos dentro do diretrio atual: dir

Traduzido e adaptado de fonte orginal: dataninja.wordpress.com Contribuidores: Ronnie Babigumira, Jamie Cotta e Carolina de Souza Costa

I.6. Executar uma rotina Executar um arquivo .do: caminhocompleto/nomearquivo.do


caminhocompleto = o caminho inteiro da pasta onde o arquivo est guardado nomearquivo = nome escolhido pelo pesquisador para o arquivo

set more off run C:\Desktop\STATEX\correlacao_ingreso2010.do Executar comando suprimindo output e procedendo apesar dos erros: capture comando Executar comando e ver output e mensagens de error: capture noisily comando

I.7. Criar e salvar arquivo .log Criar um registro de seu trabalho (gravar e salvar os resultados dos comandos executados) log using caminhcompleto/nomearchivo.log ou log using caminhcompleto/nomearchivo.log, text replace (text replace substitui a verso anterior do log) capture log using caminhcompleto/nomearchivo.log Parar de salvar resultados (fechar o log): log close Para passar mensagens de erro: capture by Visualisar log inteiro: view nomearquivo.log Exemplo: log using C:\Desktop\STATEX\anova_renda2010.log, text replace comando1 comando2 log close view anova_renda2010.log I.8. Usar operadores: Relao lgica aritmtica (numrica e string(texto)) + somar ~ no subtrair * multiplicar / dividir & e | ou < menor que > maior que >=> maior ou igual <= < menor ou igual ^ elevado potncia == igual != no igual ~= no igual

ou

Traduzido e adaptado de fonte orginal: dataninja.wordpress.com Contribuidores: Ronnie Babigumira, Jamie Cotta e Carolina de Souza Costa

1.9. Incluir qualificadores em expresses Caso x seja igual a 1: if x==1 Caso x seja maior que 5 e menor que 20: if x>5 & x<20 Para indicar que est nas primeiras 10 observaes: in (1/10) Para realizar uma ao por grupos (um ou mais): comando by(grupo) grupo refere a uma varivel categrica Exemplos: by genero: summarize escolaridade ou bysort genero: sum escolaridade if edade >=15 & edade <=55 ou graph bar escolaridade, over (genero) 1.10. Listar variveis Listar x1 at x10: x1-x10 Listar todas as varivies incluindo e entre var2 e var6: var2-var6 Exemplo: genero-altura (genero e altura representam duas variveis no banco de dados) Listar todas as varivies que comeam com popul: popul* Executar comando para todas as varivies: comando _all Exemplos: des _all ou su _all II. Trabalhar com os dados II.1. Carregar arquivos .dta Carregar arquivo .dta: use caminho/nomearquivo.dta Limpar a memria do Stata, ou retirar o banco de dados atual da memria (usar antes de importar um novo banco): clear Trabalhar com apenas as primeiras 100 observaes: use caminho/nomearquivo.dta in=1/100 Trabalhar com apenas as observaes de um valor/categoria (i.e. homens): use caminho/nomearquivo.dta if sex==homens II.2. Ler um arquivo texto Importar arquivo de texto (comma-delimitado): insheet using caminho/nomearquivo.txt, comma
Substituir virgula com tab se o arquivo tab-delimitado

Se os nomes de variveis no esto incluidas usar: insheet var1 var2 var3 caminho/nomearquivo.txt

II.3. Salvar arquivos Salvar em formato de Stata (.dta): save caminho/nomearquivo.dta ou save caminho/nomearquivo.dta, replace (replace grava a nova verso sobre da original) Salvar em formato de texto-delimitado: outsheet _all using caminho/nomearquivo.txt , comma (pode usar tab em vez de comma)

Traduzido e adaptado de fonte orginal: dataninja.wordpress.com Contribuidores: Ronnie Babigumira, Jamie Cotta e Carolina de Souza Costa

II.4. Descrever e resumir dados Visualizar nomes e legendas de variveis, e dados do livro de cdigos que descreve o banco de dados: codebook Listar informao sobre o livro de cdigos para variveis especficas: codebook varivel ou codebook var1 var2 var3...etc. Listar estatsticas univariadas para todos as variveis: summarize ou sum ou su Listar estatsticas univariadas para variveis especficas: su var1 var2 var3 Listar os dados na memria: list Listar todos os valores de var1: list var1 Listar todos os valores de var1 e var2 e somar os valores de var2: list var1 var2, sum (var2) Listar casos 1 at 10 de var1: list var1 in 1/10 Pode-se ordenar a varivel antes de listar (i.e. ordenar idade e listar os 5 mais jovens) Listar casos 1 at 20 de var1, var2 e var3: list var1 var2 var3 in 1/20 Listar qualquer caso: list in #obs (inserir # da observao) Listar todas as variveis comeando com popul: list popul* Listar casos condicionalmente: list varl if varl>20 II.5. Organizar variveis Ordenar varivel: sort varivel Retirar uma varivel do banco de dados em uso: drop var1 var2 [if][options] Manter variveis no banco de dados em uso: keep var1 var2 [if][options] As variveis no-especificadas sero eliminadas Ordenar variveis: order var5 var2 var8 var10
As variveis listadas aparecero primeiro na janela de variveis, na ordem especificada. As outras ficaro na ordem original, aps as listadas.

Ordenar variveis alfabeticamente: aorder var5 var2 var8 (segue a mesma lgica acima)

Traduzido e adaptado de fonte orginal: dataninja.wordpress.com Contribuidores: Ronnie Babigumira, Jamie Cotta e Carolina de Souza Costa

II.6. Criar legendas Criar uma legenda para um banco de dados: label data Legenda do banco Criar uma legenda para uma varivel: label variable nomevaroriginal novonomevar Definir uma lista de associaes de nmeros inteiros e texto chamadas value labels (legendas de valores): label define legendavalores x legenda1 y legenda2 z legenda3 Anexar uma legenda a valores a uma lista de variveis: label values varivel Exemplo de comandos en sequncia: label variable pesc2008 pescador em 2008 label define pescador 1 sim 0 no label values pesc2008 Visualisar uma lista de nomes das legendas de valores armazenadas na memria: label dir Listar nomes e contedo de legendas de valores na memria ou apenas variveis especificadas: label list ou label list legendavalores legendavalores2 Gerar uma cpia de uma legenda de valores que existe: label copy legendavalores novolegendavalores Exemplo: label copy anos_escola escolaridade Eliminar uma legenda: label drop legendavalores Salvar legendas num arquivo .do: label save
til para legendas de valores que no esto associadas a uma varivel porque as legendas no so salvas com os dados.

II.7. Adicionar idioma para legendas Adicionar legendas em outro idioma como espanhol: label language es, new Voltar ao idioma de legendas padro: label language, default Voltar a outro idioma de legendas (i.e. espanhol): label language es

Traduzido e adaptado de fonte orginal: dataninja.wordpress.com Contribuidores: Ronnie Babigumira, Jamie Cotta e Carolina de Souza Costa

II.8. Copiar e manipular variveis Gerar nova varivel baseada numa varivel existente (exemplos): gen x = y/10 ou gen x2= x^2 ou gen z=(x+y) if var1==1 & var2>100 Renomear varivel= rename var1 novonome_variavel [if][options] Clonar (cpiar) varivel: clonevar novonomevar = nomevar [if]
Este comando copia todas as propriedades da varivel original (nome, tipo de armazenamento, valores, legendas, etc.)

Recodificar valores de varivel (i.e. criando novos cdigos para valores aps copiar varivel original): recode var1 (min/5=1) (6/max=2) ou recode var1 (.=1) if var2==1 ou recode var1 (1=2) (else=0) ou recode var1 var2 (1 2 = 1 "baixo") (3 = 2 mdio) (4 5 = 3 "alto"), label(novoclasse) Substituir valores: replace varivel [if][options] Pode-se repetir comando at todos os valores de interesse serem substituidos Example 1: replace var1 = var1^2 Example 2: replace var1 = 1 if (var1<=25) // replace var1 = 2 if (var1>25) & (var1<=50) // replace var1 = 3 if (var1>=51) & (var1<=75) //

II.9. Agregar bancos de dados Agregar (append) dois bancos semelhantes (i.e. bancos com variveis idnticais digitados por pessoas diferentes): use banco1 append using banco2 ou append using banco2, keep(var1 var 2 var5 var7 var8) save caminho/banco3 II.10. Unir bancos de dados Unir (merge) dois bancos diferentes que tem pelo menos uma varivel em comm: use banco1 sort id (id representa a varivel em comm pela qual a unificao ser realizada) save, replace clear use banco2 sort id merge id using banco1 ou merge id using banco1, uniqmaster ou merge id using banco1, uniqusing save caminho/banco3
unique, uniqmaster, e uniqusing especificam que as variveis nas quais a unio ser baseada identifiquem unicamente as observaes. uniqmaster identifica unicamente observaes no banco que est aberto e no necesriamente no banco using uniqusing identifica unicamente observaes no banco using e no necesriamente no banco master Para a maioria destas, deveria especificar apenas unique. unique igual a especificar ambos uniqmaster e uniqusing.

Traduzido e adaptado de fonte orginal: dataninja.wordpress.com Contribuidores: Ronnie Babigumira, Jamie Cotta e Carolina de Souza Costa

II.11. Agrupar variveis Bsico: collapse (sum) var3 var4 var5, by (var1 var2)
A soma dos valores de var3 var4 e var5 ser gerada ao nvel de var1 e var2.

Exemplo: collapse (sum) rendafloresta rendaagric rendapesca, by (domicilio ano) Avanada: collapse (count) var2 (sum) var3 (mean) var8 (p50) var9, by (var1)
A contagem dos casos de var2, a soma de valores de var3, a mdia de valores de var8 , e a mediana de valores de var9 sero geradas ao nvel de var1. .

Exemplo: collapse (count)produtos (sum)rendafloresta (mean)rendabruto (p50)rendaliquido, by (domicilio) II.12. Realizar operaes em todas as variveis (loop over items) Usar foreach para aplicar um comando a cada varivel listada: Exemplo 1: foreach x of varlist v1 v2 v3 { recode `x (-99=.) } Pode usar tambm: foreach x in v1 v2 v3
Observe as aspas a primeira e segunda so caracteres diferentes

Exemplo 2: foreach v of varlist v1 v4 v7 v8 v9 { generate log`v = log(`v) } II.13. Trabalhar com valores ausentes Transformar valores ausentes (.) em valores nmericos: mvencode varivel mv(-999) [in][if][options]
O nmero entre parenteses pode ser qualquer que no seja um valor vlido para a varivel

Transformar valores nmericos em valores ausentes (.): mvdecode varivel mv(-99) [in][if][options]
O nmero entre parenteses varia para cada banco de dados

II.14. Gerar nmeros aleatrios Criar varivel aleatria que contem nmeros pseudo-aleatrios uniformamente distribuidos no intervalo [0,1) gen random = runiform() Criar varivel aleatria que contem nmeros aleatrios normalmente distribuidos com mdia 0 e desvio padro 1. gen normal = rnormal() Outras opes: rbinomial(n,p) rchi2(df) rpoisson() rt(df) etc. Caso nenhum banco de dados est na memria, podem ser criadas 100 observaes: set obs 100

Traduzido e adaptado de fonte orginal: dataninja.wordpress.com Contribuidores: Ronnie Babigumira, Jamie Cotta e Carolina de Souza Costa

III. Ajuda III.1. Usar assistncia On-line Para ajuda com comandos especficos: help nomecomando Para ajuda com o comando help: help Para uma lista completa de tpicos de ajuda: help contents Para obter todas as referncias para um tpico, ambos on-line e no manual: lookup inserirtpico Para aprender tudo sobre lookup, digitar: help lookup III.2. Usar tutoriais On-Line Para executar um tutorial Stata num tpico especfico: tutorial nomearquivo Para uma lista completa de tutoriais Stata: tutorial contents Exemplos de tutoriais: intro, tables, regress, logit, survival, ado

Traduzido e adaptado de fonte orginal: dataninja.wordpress.com Contribuidores: Ronnie Babigumira, Jamie Cotta e Carolina de Souza Costa

Das könnte Ihnen auch gefallen