Universidade Federal do Rio de Janeiro Faculdade de Medicina Departamento de Medicina Preventiva Instituto de Estudos de Saúde Coletiva Introdução ao STATA O STATA é um Software que permite analisar grandes bases de dados, usando métodos estatísticos. técnicas descritivas simples ou ajuste de modelos complexos Introdução ao STATA Tania Guillén de Torres ([email protected]) Rejane Sobrino Pinheiro (rejane @iesc.ufrj.br) Introdução ao STATA Introdução ao STATA Vantagens: Operadores usados pelo STATA : 1. Requer pouco espaço no disco rígido 2. Requer pouca memória RAM - se necessário é possível aumenta-la, através do comando “set mem 300m” por exemplo. 3. Métodos gráficos poderosos na parte de diagnóstico de modelos 4. Boa interface com processadores de texto e impressoras 5. É atualizado con freqüência - e publica o Stata Technical Bulletin . 6. Na página http://www.stata.com encontram-se disponíveis diversas rotinas que podem ser copiadas para o diretório c:\ado e executadas dentro do Stata. Desvantagens Não importa arquivos de bancos de dados (Dbase, Epi Info, Acces, etc.) diretamente requer de um programa de interface (Stat-Transfer) Operadores Aritméticos + → Adição - → Subtração * → Multiplicação / → Divisão ^ → exponenciação Operadores Lógicos & → e | → ou ~ → não Operadores Relacionais = ~= > >= < → → → → → igual ( Obs. Após o comando “if” devemos usar == ) diferente maior maior igual menor <= → menor igual Obs. As expressões lógicas assumem o valor 1 para “verdadeiro” e 0 para “falso”. Janelas do STATA Iniciando o STATA Clicar 2 vezes no ícone do STATA do Windows Caso não exista o ícone clique a seguinte seqüência iniciar → Programas → Stata → Barra de Ferramentas Command : Dos comandos a serem executados Results : Saídas dos comandos executados Variables : Lista de variáveis do banco em uso Review : Comandos já executados Stata Graph : Gráficos File O menu do STATA permite a execução de diversas tarefas de forma análoga a maioria dos programas para o sistema Windows. Permite realizar tarefas do tipo: Os comandos também podem ser digitados a partir da janela dos comandos. e se necessário podem ser repetidos clicando duas vezes no comando desejado a partir da janela [Review] Abrir e salvar bases de dados no formato STATA (*.dta) Abrir e salvar gráficos criados pelo STATA Executar programas de comandos criados pelo usuário (*.do) Abrir e salvar arquivo que guarde as saídas da janela de resultados, Importar e salvar arquivos em formato ASCII Preferences Edit É possível: Copiar e colar Permite personalizar bases de dados • As cores das janelas do Stata Saídas da janela de Resultados em formato texto ou tabela • Dos Gráficos • Voltar as configurações Padrão. Graphics Data Descrever o banco de dados Elaborar gráficos tipo: Editar a base de dados Histograma Sortear o banco Boxplot Combinar bases de Dados do tipo: “Append” ou “Merge” Barra Setores Criar rótulos para a base de dados, variáveis ou categorias de variáveis Dispersão, Diagnósticos para os modelos de regressão eliminar observações / variáveis Series Temporais Procurar observações duplicadas Controle de qualidade Operações com matrizes Etc. Mudar o nome das variáveis, Calculadora Statistics Janela do HELP: Estatística descritiva (Médias, proporções, intervalos de confiança, testes de hipóteses, etc. Modelos de Regressão : Linear Logística Sobrevida Lineares Generalizados Permite lembrar a sintaxe dos comandos, Séries Temporais (Arima, Arch/Garch) Pesquisar tópicos no site do STATA. Dados Longitudinais Obter versões atualizadas do STATA.exe e dos programas com extensão *.ado Amostragem Complexa Analise Multivariada (Componente principais, Analise Fatorial, etc.) Importar e instalar pesquisadores, rotinas desenvolvidas por outros Bootstrap/Jackknife Barra de Ferramentas ....cont Barra de Ferramentas • Abrir arquivos do tipo *.dta • Salvar arquivo *.dta em uso • Janela do Log • Editar base de dados • Browse – nao permite modificar a base de dados mostrar conteúdo do arquivo que guarda as saídas • Editor de arquivos de comandos (*.do) fechar o arquivo *.log suspender temporariamente a gravação das saídas no • Janela do “Help” • Interrompe execução de comandos Janela [Log…] …]: …] As saídas da janela de “Resultados ” podem ser salvas em formato: *.log ou *.smcl O formato *.log pode ser editado no bloco de notas, Word, etc. arq.log Resume → redireciona as saídas novamente ao arq.log Entrada de Dados Bases de Dados no STATA 1. É possível criar a base diretamente no editor 2. Importar ou exportar arquivos do tipo ASCII e planilhas 3. E copiar e colar no editor do STATA dados de outras planilhas Clicar no botão [Editor] Digitar os dados na planilha Stata - uma coluna por variável e uma linha por paciente. O Stata automaticamente escolhera o tipo da variável de acordo com os valores digitados. Obs. Não esquecer de apertar o botão “Preserve” para manter as alterações feitas no banco de dados no editor de dados Nome de variáveis Para dar nome à variável clique 2 vezes numa célula da coluna correspondente e digite o nome da variável, que deverá ter no máximo 8 caracteres no campo “Name” e o rótulo da variável no campo “Label”. Adicionando novas observações Na janela do [Data Editor ], bastará digitar as novas observações nas linhas vazias que se encontram após a última preenchida. Adicionando novas variáveis Na janela do editor basta digitar os valores da nova variavel numa coluna vazia e depois atribuir-lhe um nome Stata usa o ponto “.” para indicar que a observação é missing Não esqueça de apertar o botão [Preserve] para que o Stata guarde as mudanças feitas no banco de dados Aperte o [X] no canto superior direito para sair da janela do editor. Salve o banco na opção File [Save as] indique o diretório e escreva o nome do arquivo. Importação / Exportação de dados Importação / Exportação de dados Lembre que o Stata tem os recursos do windows “copiar” e “colar” que permitem importar qualquer planilha tipo windows ou salvar bancos do tipo Stata (*.dta) em outros tipos de planilhas. Lembre que o Stata tem os recursos do windows “copiar” e “colar” que permitem importar qualquer planilha tipo windows ou salvar bancos do tipo Stata (*.dta) em outros tipos de planilhas. Exemplo: 2. Marque e copie as linhas e colunas com o nome e o conteúdo das variáveis que serão coladas no Stata (use o ícone de copiar ou “Ctrl+c") Os comandos “Import” ou “infile – na janela de comandos” do STATA permitem ler um banco de dados em formato ASCII e “Export” ou “outfile- na janela de comandos” permitem salvar o banco de dados em uso, no formato ASCII, para que possa ser importado por qualquer outro pacote que leia este formato. 3. No Stata posicione o cursor na célula da primeira linha e primeira coluna e cole a área selecionada, apertando o botão direito do mouse selecione a opção colar ou use a opção “Ctrl+v” Existem ainda 2 aplicativos o Stat/Transfer do propio STATA e o DBMSCOPY que permitem transformar bancos tipo Stata para outros formatos. 1. Abrir a planilha “leucemia0.xls” no programa Excell Stat/Transfer Sintaxe de um comando STATA É possível transformar bancos de dados em formatos DBASE, Lotus, Excel, Paradox, SPSS, Splus, SAS, etc. para o formato STATA ou para qualquer um dos formatos anteriores •input file type o tipo do banco de dados de entrada •file especification a unidade, a pasta, e o nome do banco origem •ouput file type o tipo do banco de dados de saida •file especification a unidade, a pasta, e o nome do banco destino Obs: Também é possível escolher as variáveis e as observações a serem incluídas no banco destino. [by varlist:] comando [varlist] [=exp] [if exp] [in range] [weight] [, options] os elementos nos colchetes são opcionais by : o comando é repetido para cada valor da variável ou variáveis contidas na varlist varlist : lista de variáveis para as quais será executado o comando, se varlist for omitida, o comando será executado para todas as variáveis =exp : opção usada nos comandos generate, replace, egen para definir ou transformar variáveis ( generate imc=peso/(altura*altura) if : restringe a ação do comando a aquelas observações para as quais a expressão é verdadeira (edit if sexo==”masculino” editor de dados mostrara as observações de indivíduos do sexo masculino ) in : restringe a ação do comando a aquelas observações contidas no intervalo definido no “range” (ex.: edit in1/10 editor de dados mostrara as primeiras 10 observações) weight : variável contendo os pesos que serão usados para ponderar as observações options : indica as opções específicas a cada comando que serão usadas, devem ser precedidas sempre por uma vírgula. Conhecendo o conteúdo do Banco Conhecendo o conteúdo do Banco describe ou desc: permite conhecer o conteúdo de um banco de dados tipo STATA, fornecendo uma série de detalhes como por exemplo: número de observações, número de variáveis, data da última atualização, lista de variáveis com seus respectivos tipos e formatos e os rótulos criados. Data Describe Data Describe variables in memory . desc Contains data from F:\Regressao\Introd_Stata9\leucemia_wbc0.dta obs: 42 Leukemia Remission Study vars: 8 6 Aug 2008 08:26 size: 1,008 (99.9% of memory free) -------------------------------------------------------------------storage display value variable name type format label variable label -------------------------------------------------------------------weeks byte %8.0g Weeks in remission relapse byte %8.0g yesno Relapse trtment byte %8.0g trtment Treatment logwbcc float %9.0g White blood cell count (ln) sex byte %8.0g sexlbl Sex trtwbcc float %9.0g trtment x logwbcc lgwbccat float %9.0g wbc trlwbcat float %9.0g -------------------------------------------------------------------Sorted by: Label: colocando Rótulos Data Labels Label dataset Podemos associar descrições (rótulos ou labels) a uma base de dados, a uma variável ou aos códigos de uma variável. label dataset No Banco de Dados Para associar uma descrição, de até 31 caracteres, a uma base de dados Para associar uma descrição, de até 31 caracteres, a um banco de dados. Inserir comentário sobre o banco de dados Data Labels Label dataset Data Labels Label variable Labels a definir nas observações Label Variable Para associar uma descrição, de até 31 caracteres, a uma variável do banco de dados. . label list wbc: 0: Baixo 1: Medio 2: Alto yesno: 0:Nao 1:Sim sexlbl: 0: Feminino 1: Masculino trtment: 0:tratamento 1:placebo Inserir comentário sobre a variável Nas Observações Nas Observações Para criar e associar uma descrição, as categorias ou valores de uma variável do banco de dados b. Nome do conjunto de rótulos c. Clique em “OK” Data Labels Label values Define or modify value labels 1. Defina os rótulos para cada uma das categorias Código Rótulo a. Clique 2 vezes no botão “Define....” d. Digite os códigos e seus respectivos rótulos para cada uma das categorias e. Após digitar o último código e rótulo, clique no [Cancel] e na janela seguinte no [Close] Associar o conjunto de rótulos à variável original Gerando novas variáveis: logwbcc = log(wbcc) Cria uma variável “newvar” adicional no banco de dados, que irá receber o valor da expressão “exp” , para as observações selecionadas na condição “if” e/ou no intervalo “in”. Labels Label values Assign value labels to variables Data Create or change variables Create new Variable nome da nova variável: logwbcc 1 3 – escolha o conjunto de rótulos 2 – escolha a variável . generate float logwbcc = log(wbcc) 4 Gerando novas variáveis: wbcc2 = (wbcc)^2 Data Create or change variables Expressão que define a nova variável: log(wbcc) Create new Variable Gerando novas variáveis Data Create or change variables Create new Variable Obs: Quando há muitas categorias, é interessante buscar uma fórmula matemática que automatize a atribuição de valores às categorias. . generate float wbcc2 = (wbcc)^2 . generate float logwbcat = int(logwbcc/2) Corrigindo os valores de uma variável Corrigindo valores Replace - muda o conteúdo de variáveis e/ou de observações já definidas de acordo com as regras especificadas na expressão “=exp” Data Create or change variables Change contents of Variable Recode - muda o conteúdo de alguns valores ou de toda a variável já definida de acordo as regras especificadas Create or change variables Data Change contents of Variable Muda conteúdo da variável: wbcc2 Expressão que corrige a variável: sqrt(wbcc) Observação: sqrt(wbcc)= raíz quadrada da variável ¨wbcc¨ Gerando novas variáveis: variável Indicadora Data . replace wbccat2 = 2 if logwbcc>=4 (7 real changes made) . replace wbcc2 = sqrt(wbcc) (42 real changes made) Create or change variables Create new Variable Condição Gerando novas variáveis: Pontos de corte (2.3, 3) Data Create or change variables Create new Variable extended Opção: pontos de corte Indicar: mínimo, valores anteriores aos pontos de corte e máximo . generate float wbccat2 = (wbcc>10) & wbcc~=. . egen float logwbccat3 = cut(logwbcc), at(0,2.29999,2.999999,5.1) icodes Gerando novas variáveis: Pontos de corte (com largura de intervalo fixa) Create or change variables Data Create new Variable extended Escolha de variáveis e/ou observações Drop – elimina as variáveis ou observações selecionadas do banco em uso. keep – é um comando similar ao drop, porem neste comando especifica-se as variáveis e/ ou observações que ficaram no banco Data Variables utilities Keep or drop variables Nome da nova variável Nome da variável original Opção: ¨Cut¨ pontos de corte Usar os códigos: 0,1,2,.. Indicar: mínimo, (largura do intervalo) e máximo. Obs: 0(1)6 vai gerar os códigos: 0,1,2,3,4 que representam as faixas: 1|-2, 2 |-3, 3 |-4, 4 |-5 e 5 |-6 . egen float logwbccat5 = cut(logwbcc), at(0(1)6) icodes Escolha de observações Data Variables utilities Escolha de observações Keep or drop observations Data Variables utilities Keep or drop observations Keep Exemplos drop wbcc2 elimina a variável “wbcc2” keep weeks relapse trtment sex wbcc logwbcc variáveis que ficam no banco Manter as observações 1 até 35 drop if relapse==1 elimina todas as observações para as quais “relapse==1” . keep in 1/35 (7 observations deleted) Olhando somente algumas observações Olhando somente algumas observações Existem diferentes maneiras de visualizar o conteúdo dos arquivos de dados: Edit: O icone do “Edit” permite, acessar a planilha de dados do [Editor] do Stata. Apresentando o conteúdo de todas as variáveis e todos os registros, sendo possível também criar novas variáveis, fazer entrada de novas observações, edição dos já existentes, etc. Edit, List e Browse. O comando “edit” (digitado na janela de comandos) pode ser usado para visualizar subconjuntos de variáveis ou de observações. Olhando somente algumas observações Edit: Edit: Data Data editor Exemplos para digitar na janela de comandos: edit weeks relapse edit weeks relapse if trtment==0 edit weeks relapse if trtment==0 in 15/35 List List É um comando permite que os valores das variáveis e/ou observações selecionadas na expressão do list sejam apresentados na janela de resultados. Na Janela “Main” do “List – List values of variables” selecione as variáveis que serão listadas na janela de resultados. Para tal siga a seqüência: Data Describe data List data Na Janela “Main” do “List – List values of variables” selecione as variáveis que serão listadas na janela de resultados. se deseja selecionar somente algumas observações digite a condição no retângulo do “if” por exemplo: “sexo==0” ou se deseja pode usar a opção [Use a range of observations] na janela “by/if/in” List – List values of variables” Browse: Se deseja selecionar somente algumas observações digite a condição no retângulo do “if” (por exemplo: “sex==0 & trtment==1”) na opção [Restrict to observations] na janela “by/if/in” É um comando que também permite visualizar a planilha de dados ou uma parte dela, com a diferença que este comando não permite realizar mudanças nas celulas da planilha. . list weeks relapse if sex==0 & trtment==1 5. 6. 13. 15. 17. 20. 21. 25. 27. 38. 41. +-----------------+ | weeks relapse | |-----------------| | 17 0 | | 19 0 | | 10 1 | | 6 1 | | 11 0 | |-----------------| | 13 1 | | 10 0 | | 9 0 | | 6 0 | | 6 1 | |-----------------| | 7 1 | +-----------------+ É uma alternativa ao comando “list” Data Data browser (read-only editor) . browse weeks relapse if trtment==0 in 15/35 , nolabel