Sei sulla pagina 1di 59

Anlise Estatstica com Stata

Prof. Antnio Augusto Moura da Silva

O que o Stata
O Stata um programa estatstico potente, capaz de resolver tarefas simples como
calcular mdia, desvio padro, testes de hiptese para mdias e propores,
intervalos de confiana, at estatsticas mais complexas como regresso linear
mltipla, anlise de varincia, regresso logstica, anlise de sobrevivncia, regresso
de Cox etc. Tem recursos potentes de tabulao de variveis e comandos para clculo
das medidas de associao usadas em epidemiologia, como razo de incidncias (rate
ratio), risco relativo (risk ratio), razo de chances (odds ratio) e risco atribuvel.
Possui recursos poderosos para manipulao de variveis, porm as ferramentas para
entrada de dados com verificao de erros de digitao so pobres. Usualmente,
melhor criar um programa para entrada de dados no EPIINFO, digitar os dados usando
os recursos CHECK e VALIDATE, e depois exportar o arquivo para o STATA usando o
STAT TRANSFER. Ou, se forem poucos dados, criar uma planilha Excel e depois
cortar e colar os dados no Stata.

Quando se carrega o programa na memria, aparece a sua tela, como na figura abaixo:
Observa-se a barra do programa Stata 12.0 (em azul, acima) e os botes do Windows
(minimizar, maximizar e fechar). Logo abaixo est a barra de menu, com os recursos
File, Edit, Data, Graphics, Statistics, User, Windows e Help.

No menu File, existe a opo Open, para abrir um arquivo STATA. Logo abaixo
observa-se a barra de botes, com os botes Open (use), Save, Print Results, Log
Begin/Close/Suspend/Resume, New Viewer, Bring Graph Window to front, New
Do-file Editor, Data Editor, Data Browser, Variables Manager, Clear more
condition e Break.

Na rea de trabalho h 5 janelas ativas: esquerda, a janela Review, onde vo surgindo


os comandos j digitados. No meio, acima, a janela Results, onde vo aparecendo os
resultados do processamento. No meio, abaixo, a janela Command, onde se digitam os
comandos. Acima direita, a janela Variables, onde ficam todas as variveis do arquivo
em uso e abaixo direita, a janela Properties, onde se pode observar as propriedades
das variveis (Variables) e dos dados (Data).

Na penltima linha da tela, aparece a pasta ativa, isto , onde esto sendo gravados os
dados (c:\data) e a ltima linha a barra do Windows, onde esto os botes Iniciar e
os botes dos programas ativos no momento. A pasta ativa pode variar de acordo com a
instalao do Stata e pode ser modificada pelo usurio (veremos como fazer isto daqui
a pouco).

Todos os comandos no Stata podem ser acessados pelo menu ou digitando-se na janela
de comandos. Se voc optar pelo menu, basta escolher clicando em File, Edit, Data,
Graphics, Statistics, User, Windows e Help, depois fazer as selees, escolher as
opes nas caixas de dilogo e clicar OK. Se voc optar pela digitao dos comandos,
ser necessrio digit-los na janela Command.

Nesta apostila, todos os comandos que voc vai precisar digitar ou escolher do menu
estaro destacados em negrito.

Apostila Stata 2
Abrindo arquivo no Stata - use
Vamos trabalhar agora com o banco de dados dcor.dta. Este arquivo armazena as
variveis do estudo FRAMINGHAM HEART STUDY, realizado nos Estados Unidos, onde se
acompanhou durante 18 anos a populao da pequena cidade de Framingham, para estudar os
fatores de risco para doena coronariana, realizando-se exames peridicos de 2/2 anos. Veja
na tabela abaixo o nome de cada varivel no arquivo e a sua descrio e codificao (em caso
de varivel categrica) e intervalo de valores (em caso de varivel quantitativa). O arquivo
contm 1406 observaes.

Nome da Descrio Codificao ou intervalo de valores


varivel
obs nmero da observao (1 a 1406)
sex sexo do adulto 1=masculino
0=feminino
chd diagnstico de doena coronariana 0=no tem
1= doena coronariana presente ao primeiro
exame (casos prevalentes)
2-10 = nmero do exame em que foi feito o
diagnstico (casos incidentes).
age idade em anos ao exame inicial (45-62 anos)
sbp presso arterial sistlica em mmHg no (90-300 mmHg)
primeiro exame
sbp10 presso arterial sistlica em mmHg no (94-264 mmHg).
dcimo exame Em 635 casos, codificados como 999, a
informao est prejudicada.
dbp presso arterial diastlica em mmHg no (50-160 mmHg)
primeiro exame
chol colesterol srico em mg/100 ml no (96-430 mg/100ml)
primeiro exame
frw peso relativo em percentual no primeiro (52-222)
exame. O peso relativo foi calculado a 11 casos prejudicados, codificados como 999.
partir da razo entre o peso da pessoa em
relao ao peso mediano para o seu grupo
de sexo/altura.
cig nmero de cigarros fumados por dia 0=no fumante (1-60, 1 dado
prejudicado=99)
death morte 0=vivo
2-10 = nmero do exame em que j estava
morto
cause causa do bito (19 casos prejudicados=9)
0 vivo ao primeiro exame
1 doena coronariana (sbita)
2 doena coronariana (no sbita)
3 acidente vascular enceflico

Apostila Stata 3
4 outra doena cardiovascular
5 cncer
6 outro

O primeiro passo abrir o arquivo. Para tanto preciso usar o comando File / Open /
e em seguida localizar o diretrio Stata onde o arquivo dcor.dta est localizado (deve estar
no desktop na pasta Stata12). Em seguida clique em cima do arquivo dcor e escolha a opo
Abrir. Observe que o comando use C;\Users\...\Desktop\Stata12\dcor.dta, clear foi
copiado para a janela Review ( esquerda) e que agora os nomes de variveis aparecem na
janela Variables (acima direita). Neste comando ... significam o nome do usurio ativo do
Windows. Note que a opo clear colocada automaticamente pelo programa para limpar a
memria, caso ela esteja ocupada com algum outro arquivo. O Stata s abre um arquivo por
vez.

Outra opo para abrir o arquivo digitar o comando na janela de comandos,


pressionando a seguir a tecla ENTER ou RETURN. Entretanto, para este comando funcionar
preciso que o arquivo dcor esteja localizado na pasta ativa.

use dcor.dta [ENTER] ou


use dcor [ENTER] (voc pode omitir a extenso .dta).

Verifique na barra de Status se a pasta ativa o mesma na qual est localizado o


arquivo dcor.dta (deve ser a pasta c:\Users\...\Desktop\Stata12). Se no for, preciso
digitar o caminho completo das unidades de disco e pastas para que o Stata possa localizar e
abrir o arquivo.

use c:\ Users\...\Desktop\Stata12\dcor.dta

(substitua os trs pontos pelo seu nome de usurio)

Ou voc precisa copiar o arquivo dcor.dta para a pasta ativa antes de usar o comando
use dcor. Ou, ainda, voc pode mudar o drive ativo. No menu, escolha File / Change Working
Directory e escolha a posta onde voc deseja trabalhar. Voc pode tambm mudar o drive
ou pasta ativa, digitando (no se esquea de delimitar o caminho usando aspas aps o
comando cd - abreviatura de change directory).

cd c:\ Users\...\Desktop\Stata12

Em seguida, aps mudar a pasta ativa, digite:

use dcor.dta

Observe que, aparece na janela de resultados o comando utilizado aps o . (ponto),


tambm chamado de prompt do programa.

Apostila Stata 4
Isto nos informa que o que foi digitado se trata de um comando e no do resultado do
processamento. O resultado do processamento vai surgir em seguida.

. use dnma

O Stata est pronto para aceitar um comando quando o ponto . aparece na janela de
resultados.

Depois de abrir o arquivo dcor.dta, pea o comando describe. Este comando nos
permite visualizar a estrutura atual do arquivo. Este comando descreve todas as variveis do
arquivo e informa o seu tipo e formato. No caso abaixo todas as variveis so do tipo float
(numricas).

describe

. describe

Contains data from dcor.dta


obs: 1,406
vars: 12 22 Jul 2013 22:30
size: 67,488
----------------------------------------------------------------------------------
storage display value
variable name type format label variable label
----------------------------------------------------------------------------------
obs float %9.0g
sex float %9.0g
chd float %9.0g
age float %9.0g
sbp float %9.0g
sbp10 float %9.0g
dbp float %9.0g
chol float %9.0g
frw float %9.0g
cig float %9.0g
death float %9.0g
cause float %9.0g
----------------------------------------------------------------------------------
Sorted by:

Listando variveis - list

Use o comando list para obter uma listagem das variveis e dos dados gravados no
arquivo. Voc pode usar o menu de comandos Data / Describe Data / List Data e teclar Ok
na janela de dilogo list list values of variables. Nesta janela de dilogo voc pode usar as
opes disponveis, escolhendo apenas algumas variveis para serem listadas e mudando a
largura das colunas para controlar a forma como os dados sero mostrados na tela (janela de
Resultados - Results).

Alternativamente voc pode digitar na janela Command:

Apostila Stata 5
list

Observe que surgem na tela os primeiros registros. Observe tambm que, para
continuar a rolar a tela e olhar os prximos registros, necessrio apertar qualquer tecla ou
clicar com o mouse em cima de more- .
Como este arquivo armazena dados de 1406 adultos, levaramos muito tempo
visualizando todos eles. Desta forma, localize o X na barra de ferramentas e clique em cima
dele para interromper a listagem. Aps interromper a listagem, pressione seta para cima ou
seta para baixo, ou [Page Up] ou [Page Down] para rolar a tela na janela de resultados para
cima ou para baixo.
Variables
Data Editor (Edit) Manager
Interromper

Log Begin / Close / Suspend / Resume Data Editor


(Browse)
New Do-file Editor

Apenas uma certa quantidade de resultados passados permanece armazenada na


janela de resultados. Assim, possvel que voc faa o rolamento para cima e parte dos
resultados obtidos nesta seo tenham desaparecido. Por isso existe a possibilidade de
gerar um LOG file. Utilizando o comando log using <nome do arquivo> voc grava todo o
resultado do processamento em um arquivo que voc pode abrir depois. Tudo aquilo que for
digitado (comandos) e todos os resultados gerados a partir do momento em que voc usa o
comando log sero gravados em um arquivo especfico. Digite o comando abaixo para gerar
um LOG:

log using dcor

Observe que aparece na janela de resultados:

. log using dcor


-----------------------------------------------------------------
name: <unnamed>
log: /Users/aamouradasilva/Desktop/Stata12/dcor.smcl
log type: smcl
opened on: 22 Jul 2013, 23:05:47

De agora em diante, tudo o que voc digitar e os resultados do comando sero


gravados no arquivo dcor.smcl (smcl a terminao que o Stata usa para guardar os dados
em formato prprio, abreviatura de Stata markup and control language). Digite agora list
sex para obter uma listagem apenas da varivel sexo.

list sex in 1/10

Apostila Stata 6
(a opo in 1/10 vai listar apenas os 10 primeiros registros).

Vamos abrir agora o arquivo log para verificar que os comandos digitados e os
resultados obtidos esto sendo gravados no arquivo dcor.smcl. Identifique o cone Log Begin
/ Close / Suspend / Resume e clique nele com o mouse. Na caixa de dilogo selecione a
opo View Snapshot of log file e clique em OK. Veja que tudo o que voc digitou ou o
resultado do processamento ocorrido aps a instruo log using aparece neste arquivo
dcor.smcl. Depois de observar isto feche a janela no x.
Outra forma de visualizar o contedo das variveis usar o cone Data Editor
(Browse) para visualizar o contedo em forma de planilha. Clique em cima do Data Editor
(Browse) e observe que as variveis so colocadas nas colunas e as observaes nas linhas.
Enquanto voc estiver no modo Browse voc no poder executar outro comando. Para isso
ter que fechar a janela do Browse e retornar para a janela principal do Stata. No Browse
voc pode filtrar as variveis que vo aparecer na listagem marcando ou desmarcando as
caixas de texto ao lado do nome das variveis.
Se voc quiser repetir um comando no precisa digit-lo de novo. Basta localizar o
comando na janela Review e selecion-lo, clicando em cima dele. Esta ao copiar o comando
para a janela Command. A basta voc teclar [ENTER] para rodar o comando novamente. Ou
voc tambm pode rodar o comando novamente clicando duas vezes em cima do comando na
janela Review. Ou, ainda, usando as teclas Page Up ou Page Down para recuperar na janela
Command os ltimos comandos digitados.

Obtendo frequncias simples de variveis -


tabulate
Para se obter uma tabela de distribuio de frequncias de uma varivel, utiliza-se o
comando tabulate. Vamos obter uma tabela de distribuio de frequncias da varivel sex
(sex). No menu clique em Statistics / Summaries, tables and tests / Tables / One-way
tables. Surgir a janela de dilogos tabulate 1 One-way tables, Escolha em categorical
variables a varivel sex e tecle OK.
Outra alternativa digitar na janela Command:

tabulate sex

No Stata possvel abreviar os comandos para digitao, usando-se as trs primeiras


letras do comando. Desta forma voc obteria o mesmo resultado digitando:

tab sex

sex | Freq. Percent Cum.


------------+-----------------------------------
0 | 737 52.42 52.42
1 | 669 47.58 100.00
------------+-----------------------------------
Total | 1,406 100.00

Apostila Stata 7
Consultando a tabela de codificao observamos que 1=masculino, 2=feminino.
Observe que o total de casos de 1406 observaes.

Vamos solicitar agora a tabulao da varivel causa da morte:

tab cause

. tab cause

cause | Freq. Percent Cum.


------------+-----------------------------------
0 | 1,055 75.04 75.04
1 | 52 3.70 78.73
2 | 60 4.27 83.00
3 | 27 1.92 84.92
4 | 57 4.05 88.98
5 | 79 5.62 94.59
6 | 57 4.05 98.65
9 | 19 1.35 100.00
------------+-----------------------------------
Total | 1,406 100.00

Confira na tabela de codificao que 0 (zero) corresponde s pessoas que no


morreram e continuavam vivas, 1=doena coronariana (sbita), 2=doena coronariana (no
sbita), 3=acidente vascular enceflico, 4= outra doena cardiovascular, 5=cncer e 6=outro.
H tambm 19 casos nos quais no se sabe a causa da morte, codificados como 9. Veja que
75,04% das pessoas continuavam vivas e que a principal causa de morte foi a doena
coronariana (52 casos de morte sbita e 60 casos de morte no sbita).

Podemos descartar os casos ignorados da anlise, codificados como 9, utilizando o


comando recode, para se trabalhar apenas com os casos com informao completa.

recode cause 9=.


tab cause

. tab cause

cause | Freq. Percent Cum.


------------+-----------------------------------
0 | 1,055 76.06 76.06
1 | 52 3.75 79.81
2 | 60 4.33 84.14
3 | 27 1.95 86.09
4 | 57 4.11 90.19
5 | 79 5.70 95.89
6 | 57 4.11 100.00
------------+-----------------------------------
Total | 1,387 100.00

Pronto, agora os casos cuja causa da morte foi ignorada foram descartados da
anlise e o total agora 1387. Entretanto, estes casos no foram apagados do banco de
dados. Eles s no aparecem na tabulao. Os casos 9 foram recodificados para . (ponto). O
Stata usa o cdigo . para indicar dados ignorados. O comando tab ignora os valores
codificados como . (ponto), embora eles no tenham sido apagados do banco de dados. Se
voc quiser verificar isso ou se quiser incluir estes casos ignorados na tabulao necessrio

Apostila Stata 8
digitar a opo missing aps o comando tab, que pode ser abreviada para mis. Note que para
se usar uma opo de comando necessrio separar o comando da sua opo por uma vrgula.

tab cause, mis

. tab cause, mis

cause | Freq. Percent Cum.


------------+-----------------------------------
0 | 1,055 75.04 75.04
1 | 52 3.70 78.73
2 | 60 4.27 83.00
3 | 27 1.92 84.92
4 | 57 4.05 88.98
5 | 79 5.62 94.59
6 | 57 4.05 98.65
. | 19 1.35 100.00
------------+-----------------------------------
Total | 1,406 100.00

Renomeando variveis - rename


Podemos mudar os nomes das variveis usando o comando rename. Vamos mudar o nome
da varivel sex para sexo

rename sex sexo

Rotulando variveis e valores - label


Agora precisamos documentar o arquivo e torn-lo mais fcil de ser entendido,
utilizando rtulos (labels). Primeiro vamos documentar as variveis. No use acentos ou
cedilha pois ficar ininteligvel (o programa no entende smbolos do portugus).
Observe que necessrio colocar o rtulo da varivel entre aspas.

label variable cause Causa da morte

Use agora o comando describe para observar o resultado. Veja que agora a varivel
cause tem uma variable label (rtulo): Causa da morte.

describe cause

. describe cause

storage display value


variable name type format label variable label
---------------------------------------------------------------------------------------
cause float %9.0g Causa da morte

Apostila Stata 9
Rotule tambm a varivel sexo e pea sua descrio em seguida:

label variable sexo Sexo

describe sexo

. describe sexo

storage display value


variable name type format label variable label
------------------------------------------------------------------------------------
sexo float %9.0g Sexo

Vamos usar agora o recurso de rotular valores de variveis numricas. Por exemplo,
vamos dizer que, no caso da varivel sexo, 1 significa masculino e 0 feminino, usando os
comandos label define e label values. No primeiro comando, label define, o rtulo de
nome sexo criado e seus valores so definidos como 1 para masculino e 0 para
feminino. No segundo comando, os valores do rtulo sexo so colocados na varivel
sexo.

label define sexo 1 masculino 0 feminino


label values sexo sexo

Agora, ao pedir uma tabulao observe que o valor 1 substitudo por masculino e o
valor 0 por feminino.

tab sexo

. tab sexo

Sexo | Freq. Percent Cum.


------------+-----------------------------------
feminino | 737 52.42 52.42
masculino | 669 47.58 100.00
------------+-----------------------------------
Total | 1,406 100.00

Use agora o comando describe para observar o resultado e verificar que agora a
varivel sexo tem um rtulo (value label) chamado sexo:

describe sexo

. describe sexo

storage display value


variable name type format label variable label
----------------------------------------------------------------------------------------
sexo float %9.0g sexo Sexo

Apostila Stata 10
Entretanto, o valor da varivel no arquivo no foi modificado. Para observar isto pea
uma tabulao omitindo o rtulo, usando a opo nolabel.

tab sexo, nolabel

. tab sexo, nolabel

Sexo | Freq. Percent Cum.


------------+-----------------------------------
0 | 737 52.42 52.42
1 | 669 47.58 100.00
------------+-----------------------------------
Total | 1,406 100.00

Se voc quiser, voc pode pedir uma lista dos rtulos e dos seus contedos:

label list

. label list
sexo:
0 feminino
1 masculino

Todas as opes de mudar o nome da varivel (rename), colocar um rtulo na varivel


(label variable), criar rtulos para categorias (label define) e colocar rtulos nas categorias
das variveis (label values) esto tambm disponveis no cone Variables Manager na barra
de cones.

Calculando mdia e desvio padro -


summarize
Solicite agora o clculo da mdia do colesterol srico:

summarize chol

. summarize chol

Variable | Obs Mean Std. Dev. Min Max


-------------+--------------------------------------------------------
chol | 1406 234.7226 46.29291 96 430

Observe que a mdia do colesterol srico foi de 234,72, o desvio padro 46,29, o
valor mnimo 96 e o mximo 430. O comando summarize tambm pode ser digitado na forma
abreviada:

sum chol

Apostila Stata 11
Exerccios
No se esquea de anotar os comandos utilizados para obter os resultados.

1) Usando os comandos aprendidos acima, verifique qual o percentual de


pessoas que j tinham doena coronria ao primeiro exame.
2) Qual o percentual de pessoas que no fumavam?
3) Qual a mdia da presso arterial sistlica?
4) Use o recurso de rotular valores para a varivel cause.
5) Qual o percentual de pessoas que morreram no segundo ano do estudo?
6) Qual a mdia de idade dos participantes deste estudo?

Apostila Stata 12
Criando arquivos no Stata - edit
Vamos agora gerar um arquivo simples, contendo 4 campos. Para criar um arquivo no
Stata basta clicar no boto Data Editor (Edit) ou digitar na janela de comandos edit.
Surge o editor, pronto para se digitar o primeiro registro da primeira varivel (var1).
Aqui voc pode ir digitando nas colunas os contedos das variveis que o Stata vai
automaticamente criando as variveis var1, var2, var3 etc. O programa, a partir do
que digitado, vai automaticamente criando variveis numricas ou categricas,
conforme o caso e determinando o tamanho de cada campo. Depois voc pode mudar o
nome de cada campo, por exemplo de var1 para idade. Quando a casela for deixada
em branco o Stata coloca automaticamente o seu cdigo para dado prejudicado
(missing) que o ponto. Vamos comear, criando o arquivo abaixo:

Digite inicialmente s os dados nas colunas e depois vamos aprender o comando para
mudar o nome da varivel. Digite 2350 e tecle ENTER para o cursor se mover para a
casela de baixo e assim sucessivamente. Quando digitar o 5o. dado da 1a. coluna passe
com as setas ou com o mouse para a 1a. casela da 2a. coluna e assim por diante. Quando
terminar feche o editor clicando no boto X, pois enquanto o modo Edit estiver ativo,
voc no poder executar comando no Stata. Observe, na janela Variables, que surgem
var1, var2, var3, var4 e var5 e na janela Review, edit.

pesonasc tiparto idgest idmae sexo


2350 1 40 30 1
1500 2 33 22 1
3430 1 41 19 1
2920 1 38 33 2
3100 2 39 25 2

No Stata os nomes de variveis so minsculos. Depois da digitao de dados, a


primeira coisa que voc deve fazer salvar os dados. V at a janela de comandos e
digite, sempre em minsculas:

save rn e tecle [ENTER]

O Stata avisa file rn.dta saved (arquivo rn.dta salvo)

Aqui voc pode observar que o Stata usa .dta como terminao de arquivo. Utilize
agora o comando describe para observar os tipos de variveis criadas pelo Stata.

describe e tecle [ENTER]

Apostila Stata 13
Contains data from rn.dta
obs: 5
vars: 5
size: 50 (100.0% of memory free)
-------------------------------------------------------------------
1. var1 int %8.0g
2. var2 byte %8.0g
3. var3 byte %8.0g
4. var4 byte %8.0g
5. var5 byte %8.0g
-------------------------------------------------------------------
Sorted by:

Todas as variveis criadas so numricas (int e byte) e todas de tamanho 8 (%8.0g).


Outros tipos de variveis numricas so long, float and double. A diferena entre
estes tipos de variveis numricas o seu tamanho e a preciso dos clculos,
determinada pelo nmero de casas decimais depois da vrgula.

Outro tipo de varivel que pode ser criada no Stata so as variveis do tipo caracter
ou categricas, usadas para armazenar informao no numrica, ou seja, endereo,
nome, telefone. Estas variveis podem conter nmeros, mas no vamos realizar
operaes matemticas com estes nmeros, eles servem apenas como identificadores.

Vamos pedir agora uma listagem do arquivo.

list

var1 var2 var3 var4 var5


1. 2350 1 40 30 1
2. 1500 2 33 22 1
3. 3430 1 41 19 1
4. 2920 1 38 33 2
5. 3100 2 39 25 2

Estatstica descritiva
E agora pea uma estatstica descritiva destes campos.

summarize

Variable | Obs Mean Std. Dev. Min Max


---------+-----------------------------------------------------
var1 | 5 2660 757.5949 1500 3430
var2 | 5 1.4 .5477226 1 2
var3 | 5 38.2 3.114482 33 41
var4 | 5 25.8 5.718391 19 33
var5 | 5 1.4 .5477226 1 2

O Stata mostra o nmero de observaes, a mdia (mean), o desvio padro (Std. Dev.),
o valor mnimo e o valor mximo. Note que no caso das variveis tipo de parto (var2) e
sexo (var5), a mdia no tem valor algum, pois estas variveis esto codificadas. No

Apostila Stata 14
caso de tiparto (1=parto vaginal; 2=parto cesreo) e no caso de sexo (1=masculino;
2=feminino).

Renomeando variveis - rename


O prximo passo mudar os nomes das variveis.

rename var1 pesonasc


rename var2 tiparto
rename var3 idgest
rename var4 idmae
rename var4 sexo

Rotulando variveis e valores - label


Agora vamos rotular as variveis.

label variable pesonasc Peso ao nascer no HU em 2012


label variable tiparto Tipo de parto
label variable idgest Idade gestacional em semanas-DUM
label variable idmae Idade da mae em anos completos
label variable sexo Sexo do recem-nascido

Use agora o comando describe para observar o resultado:

describe

Contains data from rn.dta


obs: 5
vars: 5
size: 50 (99.9% of memory free)
-------------------------------------------------------------------------------
1. pesonasc int %8.0g Peso ao nascer no HU em 1998
2. tiparto byte %8.0g Tipo de parto
3. idgest byte %8.0g Idade gestacional semanas-DUM
4. idmae byte %8.0g Idade da mae em anos completos
5. sexo byte %8.0g Sexo do recem-nascido
-------------------------------------------------------------------------------
Sorted by:
Note: data has changed since last save

Para salvar as alteraes feitas digite:

save, replace (salva, grava por cima do arquivo antigo com o mesmo nome -
rn)

Apostila Stata 15
Vamos usar agora o recurso de rotular valores de variveis numricas. Por exemplo,
vamos dizer que no caso da varivel tiparto 1 significa parto vaginal e 2 parto cesreo,
usando os comandos label define e label values.

label define tipo 1 vaginal 2 cesareo


label values tiparto tipo

Distribuio de frequncias - tabulate


Pea agora a distribuio de freqncias da varivel tiparto para observar o que
ocorreu:

tabulate tiparto

Tipo de |
parto | Freq. Percent Cum.
------------+-----------------------------------
vaginal | 3 60.00 60.00
cesareo | 2 40.00 100.00
------------+-----------------------------------
Total | 5 100.00

Salve novamente as alteraes, usando a opo replace para substituir (gravar por
cima) o arquivo anterior:

save, replace

Outro recurso importante ordenar o contedo de um campo com o comando sort:

sort tiparto
list

Para fechar o arquivo e limpar a memria digite:

clear

Para abrir novamente o arquivo use o menu File e, em seguida, Open. Clique no arquivo
rn e no boto abrir. Ou, alternativamente, digite:

use rn

Apostila Stata 16
Criao de novas variveis generate
e recodificao replace
Vamos recodificar o peso ao nascer em baixo peso (aquelas crianas com menos de
2500 gramas ao nascer) e no baixo peso (2500 gramas e mais). O primeiro passo
criar uma nova varivel atravs do comando generate. Toda varivel criada no Stata
tem que ser inicializada com um valor especfico. No caso criaremos a varivel peso=0
e recodificaremos pesonasc < 2500, criando peso=1 nestes casos.

generate peso=0
replace peso=1 if pesonasc < 2500

tabulate peso

peso | Freq. Percent Cum.


------------+-----------------------------------
0 | 3 60.00 60.00
1 | 2 40.00 100.00
------------+-----------------------------------
Total | 5 100.00

Da mesma forma vamos recodificar idade gestacional em prematuro (<37 semanas) e


no prematuro (37 semanas e mais).

generate premat=0
replace premat=1 if idgest < 37

tabulate premat

premat | Freq. Percent Cum.


------------+-----------------------------------
0 | 4 80.00 80.00
1 | 1 20.00 100.00
------------+-----------------------------------
Total | 5 100.00

Operadores de comparao (usados aps o if)

== igual a
!= diferente de
> maior do que
< menor do que
>= maior ou igual
<= menor ou igual

Apostila Stata 17
Tabelas 2 x 2 - tabulate
Pea agora uma tabela de peso com idade gestacional, com a opo row (para o clculo
dos percentuais das linhas)

tabulate premat peso, row

| peso
premat | 0 1 | Total
-----------+----------------------+----------
0 | 3 1 | 4
| 75.00 25.00 | 100.00
-----------+----------------------+----------
1 | 0 1 | 1
| 0.00 100.00 | 100.00
-----------+----------------------+----------
Total | 3 2 | 5
| 60.00 40.00 | 100.00

Observe que a taxa de baixo peso nesta amostra de 40%. Dentre os prematuros
(codificados como 1), 100% tm baixo peso e que dentre os no prematuros
(codificados como 0), 25% tm baixo peso.

Vamos pedir agora a tabela diferente, isto , peso e prematuridade, com os


percentuais das colunas, colocando a varivel resposta (peso ao nascer) nas linhas e a
exposio (idade gestacional) nas colunas.

tabulate peso premat, col

| premat
peso | 0 1 | Total
-----------+----------------------+----------
0 | 3 0 | 3
| 75.00 0.00 | 60.00
-----------+----------------------+----------
1 | 1 1 | 2
| 25.00 100.00 | 40.00
-----------+----------------------+----------
Total | 4 1 | 5
| 100.00 100.00 | 100.00

Operadores lgicos:

& e
| ou
! no

Apostila Stata 18
Selecionando registros para processamento
keep / drop
s vezes se precisa limitar o processamento a determinados registros. Digamos que se
queira processar apenas os registros do sexo masculino (1). Pode-se usar o comando
keep, selecionado sexo==1 ou drop, desprezando-se sexo==2. Note que aps o if voc
precisar usar dois smbolos de igual ==

keep if sexo==1

drop if sexo==2

Cuidado com o uso destes comandos, pois os registros sero apagados


definitivamente! Por isso recomendamos que, toda vez que voc usar drop ou keep,
salve o arquivo com outro nome em seguida, preservando o arquivo original.

Gravando o processamento em um arquivo -


log
Quando se processa grande quantidade de informao, a sada de dados vai rolando para
cima na janela Results e voc vai deixando de observar os resultados. Para isto grave a
sada em um arquivo .log, usando o comando abaixo:

log using rn.txt, text

Os resultados do processamento de dados sero gravados no arquivo rn.txt, em formato


texto. Este arquivo poder depois ser aberto em um processador de textos e as tabelas
utilizadas nos seus relatrios. s vezes voc vai precisar mudar a fonte do texto para
Courier ou Courier New para facilitar a sua leitura no processador de textos.

Apostila Stata 19
Exerccios arquivo nascma.dta
Vamos trabalhar agora com o banco de dados nascma.dta. Neste arquivo constam
dados dos nascidos vivos no Maranho em 2009, cadastrados no SINASC (Sistema de
Informaes Sobre Nascidos Vivos) do Ministrio da Sade. Veja abaixo as variveis do
arquivo que sero utilizadas em exerccios neste curso e a sua codificao.

Nome da Descrio Codificao ou intervalo de valores


varivel
local Local do nascimento 0=interior
1=capital
sexo Sexo do recm-nascido 1=masculino
2=feminino
9=ignorado
gravidez Tipo de gravidez 1=nica
2=dupla
3=tripla e mais
9=ignorado
peso Peso ao nascer em gramas 100 a 7000, 9999=ignorado
parto Tipo de parto 1=vaginal
2=cesreo
9=ignorado
idademae Idade da me em anos completos 10 a 58, 99=ignorado
escmae Escolaridade da me em anos de estudo 1=nenhuma
2=1 a 3
3=4 a 7
4=8 a 11
5=12 e mais
9=ignorado
estciv Estado civil materno 1=solteira
2=casada
3=viva
4=separada judicialmente
9=ignorado
consultas Nmero de consultas de pr-natal 1=nenhuma
2=1 a 3
3=4 a 6
4=7 e mais
9=ignorado

Vamos resolver agora os seguintes exerccios. Anote os comandos utilizados para


obter os resultados. Descarte os valores ignorados se os percentuais forem baixos
(inferiores a 2%). Se forem superiores a este valor inclua-os.

Apostila Stata 20
1) Use o comando keep para trabalhar apenas com os dados de mes residentes no
municpio de So Lus (capital).
2) Recodifique a varivel peso em <2500 e maior ou igual a 2500 gramas. Recodifique
os valores ignorados como . (ponto).
3) Coloque o rtulo peso ao nascer na varivel peso
4) Coloque rtulo nas categorias da varivel peso.
5) Pea uma listagem dos rtulos.
6) Qual o percentual de recm-nascidos em So Lus com baixo peso ao nascer?
7) Coloque o rtulo tipo de parto na varivel parto.
8) Coloque rtulo nas categorias da varivel parto.
9) Recodifique os valores ignorados da varivel parto como . (ponto).
10) Pea uma tabulao das variveis tipo de parto e peso ao nascer. Coloque o tipo de
parto na linha e o peso ao nascer na coluna. Pea o clculo da porcentagem da linha.
11) Qual o percentual de baixo peso ao nascer dentre os nascidos de parto vaginal?
12) Qual o percentual de baixo peso ao nascer dentre os nascidos de parto cesreo?

Apostila Stata 21
Gerando programas no Stata arquivo do
Geralmente quando vai processar muitos dados conveniente, ao invs de ir processando
e obtendo resultados de forma interativa, gravar os comandos Stata em um arquivo tipo
texto com a extenso .do e depois executar todos os comandos deste arquivo de uma s
vez, em lote. Vamos criar um pequeno programa para rodar no Stata. Para isto clique no
boto New Do-file Editor e digite as seguintes linhas de comandos. Depois salve o
arquivo com o nome nascma.do.

use nascma
log using nascma.txt, text replace
label variable peso "Peso ao nascer no Maranhao em 2009"
generate pesonasc=0
replace pesonasc=1 if peso < 2500
replace pesonasc=. if peso==9999
tabulate pesonasc

Agora execute o programa no Stata. Para isto voc tem vrias alternativas:

a) Escolha, ainda dentro do Do-file Editor a ltima opo da barra de cones - Execute
(do)
b) No menu do Stata, clique em File, escolha a opo Do, clique em cima de nascma.do e
clique em Abrir.
c) Ou digite na janela de comandos:

do nascma

O Stata vai executar de uma s vez todos os comandos acima e gravar os resultados do
processamento no arquivo nascma.txt, em formato texto.

Veja, abaixo, uma descrio de cada comando:

use nascma
Abre o arquivo nascma.dta se o arquivo estiver na pasta corrente. Se no ser
necessrio indicar o caminho completo para que o Stata possa abrir o arquivo.

log using nascma.txt, text replace


Passa a gravar os comandos e o resultado do processamento no arquivo nascma.txt, em
format texto. A opo replace usada para substituir (gravar por cima) do arquivo
criado anteriormente com o mesmo nome.

label variable peso "Peso ao nascer no Maranhao em 2009"


Coloca rtulo na varivel peso

Apostila Stata 22
generate pesonasc=0
Cria uma nova varivel pesonasc e coloca o valor zero em todas as obervaes

replace pesonasc=1 if peso < 2500


Substitui na varivel peso 0 por 1, se o peso ao nascer na varivel peso for < 2500
gramas

replace pesonasc=. if peso==9999


Substitui na varivel pesonasc 0 por . (ponto), se o peso ao nascer na varivel peso for
igual a 9999.

tabulate pesonasc
Gera uma tabela da nova varivel peso

O uso do Stata escolhendo os comandos no menu til para se descobrir novos


comandos que no conhecemos, pois os comandos so copiados para a janela Command e
podemos ento verificar o que o Stata fez e aprender novos comandos. Entretanto, um
procedimento demorado e que no pode ser automatizado, por meio da gerao de
arquivo DO, para processamento de vrios campos e para realizar anlise estatstica.
Desta forma, para se fazer uma boa anlise estatstica dos dados melhor usar o Stata
digitando os comandos, ao invs de usar o menu e utilizar a opo de gerar comandos em
arquivo DO. Se houver algum erro nos dados ou nos comandos voc pode facilmente
editar o arquivo DO, corrigir o erro e rod-lo novamente, poupando tempo.

IMPORTANTE:

Algumas mensagens de erro podem surgir quando trabalhamos com arquivos DO.

1) no; data in memory would be lost

. use nascma
no; data in memory would be lost
r(4);

Quando voc tentar abrir um arquivo que foi modificado na memria e no foi salvo, o
Stata avisa: no; os dados na memria seriam perdidos (no; data in memory would
be lost).

Soluo para este erro: salvar o arquivo ou usar o comando clear para limpar a memria
sem salvar o arquivo. Normalmente no salvamos o arquivo original. O ideal deixar o
arquivo original intacto, gravar os comandos em um arquivo DO e executar os comandos
de uma s vez, gerar um arquivo LOG com os resultados e nunca salvar por cima do
arquivo original. Se voc desejar salvar o arquivo modificado, salve sempre com outro
nome, como por exemplo:

save nascma1

Apostila Stata 23
2) log file already open

. log using nascma


log file already open
r(604);

end of do-file

r(604);

Quando voc tentar gerar um arquivo LOG e houver um arquivo LOG aberto, o Stata
avisa: arquivo LOG ainda aberto (log file already open).

Soluo para este erro: digitar log close.

3) file ......... already exists

. log using nascma


file /Users\...\Desktop\Stata12\nascma.txt already exists
r(602);

end of do-file

r(602);

Se voc tentar gravar por cima de um arquivo existente, o Stata avisa. Se voc quiser
mesmo gravar por cima s usar a opo replace, no comando log using. Se quiser
preservar o arquivo LOG anterior, basta gravar o resultado em outro arquivo, com outro
nome.

Apostila Stata 24
Importando dados do Excel

Para trabalhar com dados no Stata necessrio inicialmente ter o arquivo disponvel
em formato .dta. Para isto voc pode criar o banco de dados no prprio Stata, importar do
Excel ou importar de outro programa. Existe um programa chamado StatTransfer que realiza
transferncia de arquivos de vrios programas entre si. Se voc tiver um banco de dados
disponvel no formato .xls (do Excel) voc pode usar o StatTranfer para fazer a
transferncia.
Outra alternativa para importar dados do Excel para o Stata abrir o banco de dados
no Excel, selecionar tudo o que deseja transferir e usar o recurso de corte e cola do sistema
operacional (CTRL+C, CTRL+V). Vamos fazer isto passo a passo:

Inicialmente abra Excel e, em seguida, o arquivo dcor.xls localizado na pasta do


Stata12. Selecione todos os dados que deseja transferir. Depois disso copie os dados para a
rea de trabalho (Editar / Copiar ou CTRL+C). Abra o Stata, e digite edit ou clique o cone
Data Editor (Edit) na barra de cones. Dentro do editor agora escolha a opo Colar (CTRL+V)
ou Edit / Paste. O Stata vai perguntar se voc deseja considerar a primeira linha como dados
ou como nome de variveis (treat first row as data / treat first row as variable names).
Escolha considerar a primeira linha como nomes de variveis. Pronto, a planilha foi transferida
para o Stata. S falta agora salvar o arquivo. Feche o editor de dados no X. E agora salve o
banco de dados com o nome coracao.dta.

Apostila Stata 25
Usando o arquivo dcor.dta

Vamos usar os comandos aprendidos acima, desta vez com o arquivo dcor.dta.

Recodificao e tabulao replace, recode, tab


Teste do qui-quadrado

Vamos recodificar o nvel de colesterol srico em 3 classes: < 220, 220 a 259 e 260 e
mais.

generate col=0
replace col=1 if chol >=220 & chol <=259 (&=e operador lgico)
replace col=2 if chol >= 260
label variable col colesterol em mg/100ml
label define colest 0 <220 1 220a259 2 260+
label values col colest
tabulate col

colesterol |
em mg/100ml | Freq. Percent Cum.
------------+-----------------------------------
<220 | 531 37.77 37.77
220a259 | 478 34.00 71.76
260+ | 397 28.24 100.00
------------+-----------------------------------
Total | 1406 100.00

Voc tambm pode usar ao invs de replace o comando recode. Veja abaixo:

generate col2=chol
recode col2 96/219=0 220/259=1 260/430=2
label variable col2 colesterol em mg/100ml
label values col2 colest
tabulate col2

Vamos recodificar a presso arterial sistlica em 0 (risco basal pA menor que 165
mmHg) e 1 (risco, pA igual ou maior que 165 mmHg).

generate pas=.
replace pas=1 if sbp>=165
replace pas=0 if sbp<165
label variable pas "pA sistolica - mmHg"

Apostila Stata 26
label define pressao 0 "<165" 1 "165+"
label values pas pressao
tabulate pas

pA sistolica|
- mmHg | Freq. Percent Cum.
------------+-----------------------------------
<165 | 313 22.26 22.26
165+ | 1093 77.74 100.00
------------+-----------------------------------
Total | 1406 100.00

Vamos recodificar nmero de cigarros fumados em 0 (no fumante) e 1 (fumante),


excluindo 1 caso prejudicado (cig=99):

generate fumo=0
replace fumo=1 if cig!=0 ( != diferente de)
replace fumo=. if cig==99
label define cigarro 0 "nao" 1 "sim"
label values fumo cigarro
tabulate fumo

fumo | Freq. Percent Cum.


------------+-----------------------------------
nao | 772 54.95 54.95
sim | 633 45.05 100.00
------------+-----------------------------------
Total | 1405 100.00

Qual o percentual de fumantes nesta populao ?

Vamos agora recodificar chd, considerando 0 como no tendo doena coronariana e de 2


a 10 como casos de doena coronariana, excluindo 1 (casos prevalentes, isto , pessoas
que j tinham doena coronariana ao primeiro exame. Observe que transformamos 1 em .
(missing prejudicado). Desta forma o programa no processar mais estes registros
nas sadas posteriores.

generate dc=chd
recode dc 0=0 1=. 2/10=1
label variable dc doenca coronariana
label define doenca 0 nao" 1 sim
label values dc doenca
tabulate dc

doenca |
coronariana | Freq. Percent Cum.
------------+-----------------------------------
nao | 1095 80.34 80.34
sim | 268 19.66 100.00
------------+-----------------------------------
Total | 1363 100.00

Qual a incidncia de doena coronariana nesta populao ?

Apostila Stata 27
Vamos pedir agora uma tabulao de colesterol e doena coronria, para verificar se o
colesterol um fator de risco para doena coronariana, pedindo percentuais de linha e o
clculo do Qui-quadrado.

tabulate col dc, row chi2

colesterol | doenca coronariana


em mg/100ml| nao sim | Total
-----------+----------------------+----------
<220 | 423 96 | 519
| 81.50 18.50 | 100.00
-----------+----------------------+----------
220a259 | 377 81 | 458
| 82.31 17.69 | 100.00
-----------+----------------------+----------
260+ | 295 91 | 386
| 76.42 23.58 | 100.00
-----------+----------------------+----------
Total | 1095 268 | 1363
| 80.34 19.66 | 100.00

Pearson chi2(2) = 5.3202 Pr = 0.070

Observe a taxa de incidncia de doena coronariana nos diversos nveis de colesterol


srico. O valor de p do Qui-quadrado foi de 0.070, portanto maior que o nvel crtico de
0.05. Diz-se, ento, baseado no teste de hiptese, que no h diferena
estatisticamente significante entre ter colesterol elevado e sofrer de doena
coronariana. Em outras palavras, as diferenas nas taxas de incidncia, 18,5% naqueles
com colesterol menor que 220 mg/100ml, 17,7% naqueles com colesterol srico de 220 a
259 mg/100ml e de 23,6% naqueles com colesterol de 260 mg/100ml e mais, no so
estatisticamente significantes.

Pea agora a tabulao da presso sistlica e doena coronariana.

tabulate pas dc, row chi2

pA | doenca coronariana
sistolica -|
mmHg | nao sim | Total
-----------+----------------------+----------
<165 | 894 173 | 1067
| 83.79 16.21 | 100.00
-----------+----------------------+----------
165+ | 201 95 | 296
| 67.91 32.09 | 100.00
-----------+----------------------+----------
Total | 1095 268 | 1363
| 80.34 19.66 | 100.00

Pearson chi2(1) = 36.9959 Pr = 0.000

Observe a diferena nas taxas de incidncia de doena coronariana entre aqueles com
pA sistlica abaixo de 165 mmHg (16,2%) comparados com aqueles com pA sistlica
muito elevada (32,1%). O valor de p para o Qui-quadrado foi de 0.000, portanto
considera-se a diferena amostral observada estatisticamente significante. Desse
modo, a pA muito elevada considerada um fator de risco para doena coronariana.
Observe que o Stata arredondou o valor de p para zero. Na realidade o valor de P foi

Apostila Stata 28
muito baixo e quando isto acontece colocamos no relatrio p<0,001, pois no existe valor
de P igual a zero.

tabulate fumo dc, row chi2

| doenca coronariana
fumo | nao sim | Total
-----------+----------------------+----------
nao | 614 134 | 748
| 82.09 17.91 | 100.00
-----------+----------------------+----------
sim | 480 134 | 614
| 78.18 21.82 | 100.00
-----------+----------------------+----------
Total | 1094 268 | 1362
| 80.32 19.68 | 100.00

Pearson chi2(1) = 3.2612 Pr = 0.071

Interprete os resultados da tabela acima. Baseado nestes resultados h associao


entre fumo e doena coronariana ?

Apostila Stata 29
Exerccios - arquivo nascma.dta

1) Crie um arquivo DO para processar os dados do arquivo nascma.dta.


2) No arquivo Do d um comando para gravar o processamento em um arquivo
LOG, formato texto.
3) Use o comando keep para trabalhar apenas com os dados de mes
residentes no municpio de So Lus.
4) Recodifique a varivel peso ao nascer em <2500 e maior ou igual a 2500
gramas, usando o comando recode
5) Coloque rtulo na varivel peso ao nascer.
6) Coloque rtulo nas categorias de peso ao nascer.
7) Pea uma listagem dos rtulos.
8) Qual o percentual de recm-nascidos em So Lus com baixo peso ao
nascer?
9) Recodifique a varivel idade materna em 3 nveis < 20 anos, 20 a 34 anos e
35 anos e mais.
10) Coloque rtulo na varivel idade materna.
11) Coloque rtulo nas categorias de idade materna.
12) Pea uma listagem dos rtulos.
13) Pea uma tabulao das variveis idade materna e peso ao nascer. Coloque a
idade materna na linha e o peso ao nascer na coluna. Pea o clculo da porcentagem da
linha.
14) Quais os percentuais de baixo peso ao nascer de acordo com as categorias de
idde materna?
15) Pea uma tabela com o qui-quadrado e verifique se h associao entre idade
materna e baixo peso ao nascer.

Apostila Stata 30
Grficos
Existem grficos para variveis qualitativas e grficos para variveis quantitativas.

Qualitativas para as variveis qualitativas os grficos mais usados so o de barras e o de


pizza, tambm chamado de setores ou crculo.

No primeiro exemplo vamos desenhar um grfico de setores (pizza) da varivel sexo,


usando dados do arquivo dcor.dta.

graph pie, over(sex)

Vamos agora plotar a mdia da presso arterial sistlica de acordo com o sexo em um
grfico de barras:

graph bar (mean) sbp, over(sex)

Apostila Stata 31
Quantitativas no caso das variveis quantitativas os grficos mais usados so o histograma
e o polgono de freqncias. O histograma o grfico com as colunas contguas e o polgono
de freqncias o grfico de linhas.

histogram sbp

Outro grfico muito usado o diagrama de disperso, quando voc quiser relacionar
duas variveis quantitativas. Vamos verificar se medida em que aumenta a presso arterial
sistlica tambm aumenta o colesterol srico.

twoway (scatter chol sbp)

Apostila Stata 32
Exerccios grficos

1) Pea um grfico de barras plotando a mdia do colesterol srico em indivduos com


e sem doena coronariana.
2) Pea um diagrama de disperso da presso arterial sistlica com a presso arterial
diastlica.
3) Pea um histograma do nmero de cigarros fumados.

Apostila Stata 33
Anlise exploratria de dados estatstica
descritiva

Pontos bsicos para a escolha da medida de tendncia central:

a. A mediana no leva em conta a magnitude da maioria das observaes, pois se baseia


apenas na ordenao dos valores e no na sua expresso numrica. Assim, se perde
informao quando se usa a mediana. Neste aspecto a mdia mais poderosa, pois a
mediana pouco capaz de sofrer tratamento matemtico.
b. A mdia pode ser extremamente influenciada por valores extremos. Se a distribuio
for assimtrica, a mdia pode ser muito diferente da mediana.

Como se avalia a assimetria da distribuio

a. Comparando-se a mdia com a mediana. Quando a distribuio for simtrica seus valores
sero coincidentes ou prximos.
b. Pelo valor da medida de assimetria (skewness). Se o valor for negativo, a distribuio
est desviada para a esquerda. Se o valor for positivo, est desviada para a direita. Uma
distribuio razoavelmente simtrica tem coeficiente de assimetria variando entre 1 e
+1.

c. Pelo valor do coeficiente de curtose. No Stata uma distribuio perfeitamente normal


teria curtose=3. Em resumo, curtose=3 curva mesocrtica; curtose<3 curva platicrtica
(achatada) e curtose > 3 curva leptocrtica (alongada).

Apostila Stata 34
d. Visualmente no grfico (histograma ou box plot, onde se verifica a presena de valores
extremos outliers) e se pode verificar o formato da distribuio, identificando-se
assimetria ou curtose.
e. Por um teste que avalie a normalidade da distribuio (Kolmogorov-Smirnov ou Shapiro
Wilk). Quanto o valor de p nestes testes for menor do que 0.05 a distribuio no
normal.

Vamos ver abaixo como se realiza anlise de dados exploratrios no Stata:

1. Na seguinte srie numrica, que expressa a durao da ausncia ao trabalho em dias por
motivo de doena, calcule as medidas de tendncia central e disperso e responda s
perguntas abaixo. Aps entrar no Stata, clique no boto Data Editor (Edit), ou acesse e
menu Data e depois Data Editor. Digite os nmeros abaixo:

1 1 2 2 3 3 4 4 4 4 5 6 6 6 6 7 8 10 10 38 80

A. Comparar a mdia com a mediana e calcular o coeficiente de assimetria


Comandos pelo menu: No menu escolha Statistics, e a seguir clique em Summaries,
Tables, & Tests, Summary and Descriptive Statistics e Summary Statistics. Na caixa
de dilogo, indique var1. Depois clique em options: Display adittional statistics. Clique
finalmente em OK para concluir.
Ou use o comando digitado: summarize var1, detail

Apostila Stata 35
Anote os valores abaixo:

a. Mdia (Mean)=
b. Mediana (50%)=
c. Percentil 25=
d. Percentil 75=
e. Amplitude interquartil (P75 P25)=
f. Varincia=
g. Desvio-padro (Std. Dev.)=
h. Assimetria (Skewness)=
i. Curtose (Kurtosis)=

A mdia est prxima da mediana ?


Qual o valor do coeficiente de assimetria?
H assimetria ?
Qual o valor do coeficiente de curtose?
A curva mesocrtica, platicrtica ou leptocrtica?

B. Desenhar um histograma para visualizar assimetria


Comando pelo menu: No menu escolha Graphics, e depois Histogram. Na caixa de dilogo,
indique var1. Na caixa de dilogo options voc pode solicitar: add normal density plot.
Clique finalmente em OK para concluir.
Comando digitado: histogram var1, normal
Observe o histograma e avalie se a distribuio simtrica ou assimtrica.

C. Desenhar o box-plot para avaliar se a distribuio assimtrica e detectar valores


extremos
Comando pelo menu: No menu escolha Graphics e depois Box plot. Na caixa de dilogo,
indique var1. Clique finalmente em OK para concluir.
Comando digitado: graph box var1
H assimetria ?
H valores extremos ?

D. Teste de normalidade da distribuio


Comando pelo menu: No menu escolha Statistics, e a seguir clique em Summaries,
Tables, & Tests, Distributional Plots & Tests e Shapiro-Wilk normality test. Na caixa
de dilogo, indique var1. Clique finalmente em OK para concluir.
Comando digitado: swilk var1

Quanto foi o valor de p do teste da normalidade ?


Pode se assumir que a distribuio simtrica (normal) ou assimtrica ?

E. Construa o grfico de normalidade (normal quantile plot). Se a distribuio for normal


os pontos ficam sobre a reta ou bem prximos dela.

Apostila Stata 36
Comando pelo menu: No menu escolha Statistics, e a seguir clique em Summaries,
Tables, & Tests, Distributional Plots & Tests e Normal quantile plot. Na caixa de
dilogo, indique var1. Clique finalmente em OK para concluir.
Comando digitado: qnorm var1

Para a srie de dados anterior, voc utilizaria a mdia ou a mediana como medida de
tendncia central ? Por qu ?

Exerccios anlise exploratria de dados

Repita os mesmos procedimentos para os valores abaixo, que representam o dimetro dos
sarcomas removidos das mamas de 20 mulheres:

0,5 1,2 2,1 2,5 2,5 3,0 3,8 4,0 4,2 4,5 5,0
5,0 5,0 5,0 6,0 6,5 7,0 8,0 9,5 13,0

A. Comparar a mdia com a mediana e calcular o coeficiente de assimetria


Comandos pelo menu: No menu escolha Statistics, e a seguir clique em Summaries,
Tables, & Tests, Summary and Descriptive Statistics e Summary Statistics. Na caixa
de dilogo, indique var1. Depois clique em options: display adittional statistics. Clique
finalmente em OK para concluir.
Ou use o comando digitado: summarize var1, detail

Anote os valores abaixo:

j. Mdia (Mean)=
k. Mediana (50%)=
l. Percentil 25=
m. Percentil 75=
n. Amplitude interquartil (P75 P25)=
o. Varincia=
p. Desvio-padro (Std. Dev.)=
q. Assimetria (Skewness)=
r. Curtose (Kurtosis)=

A mdia est prxima da mediana ?


Qual o valor do coeficiente de assimetria?
H assimetria ?
Qual o valor do coeficiente de curtose?
A curva mesocrtica, platicrtica ou leptocrtica?

Apostila Stata 37
B. Desenhar um histograma para visualizar assimetria
Comando pelo menu: No menu escolha Graphics, e depois Histogram. Na caixa de dilogo,
indique var1. Na caixa de dilogo options voc pode solicitar: add normal density plot.
Clique finalmente em OK para concluir.
Comando digitado: histogram var1, normal
Observe o histograma e avalie se a distribuio simtrica ou assimtrica.

C. Desenhar o box-plot para avaliar se a distribuio assimtrica e detectar valores


extremos
Comando pelo menu: No menu escolha Graphics e depois Box plot. Na caixa de dilogo,
indique var1. Clique finalmente em OK para concluir.
Comando digitado: graph box var1
H assimetria ?
H valores extremos ?

D. Teste de normalidade da distribuio


Comando pelo menu: No menu escolha Statistics, e a seguir clique em Summaries,
Tables, & Tests, Distributional Plots & Tests e Shapiro-Wilk normality test. Na caixa
de dilogo, indique var1. Clique finalmente em OK para concluir.
Comando digitado: swilk var1

Quanto foi o valor de p do teste da normalidade ?


Pode se assumir que a distribuio simtrica (normal) ou assimtrica ?

E. Construa o grfico de normalidade (normal quantile plot). Se a distribuio for normal


os pontos ficam sobre a reta ou bem prximos dela.
Comando pelo menu: No menu escolha Statistics, e a seguir clique em Summaries,
Tables, & Tests, Distributional Plots & Tests e Normal quantile plot. Na caixa de
dilogo, indique var1. Clique finalmente em OK para concluir.
Comando digitado: qnorm var1

Para a srie de dados anterior, voc utilizaria a mdia ou a mediana como medida de
tendncia central ? Por qu ?

Apostila Stata 38
Transformaes
Se a distribuio no for simtrica temos que usar estimativas no paramtricas ou
ento transformar os dados.
Pode-se avaliar a normalidade da distribuio atravs de testes, como o de Shapiro-
Wilk, mas o melhor mesmo realizar uma anlise exploratria completa dos dados,
comparando a mdia com a mediana, verificando os valores dos coeficientes de assimetria e
curtose, usando mtodos grficos (box-plot) e histograma e realizando tambm testes de
normalidade. Vale ressaltar que os testes de normalidade da distribuio tem poder baixo
para detectar desvios da normalidade no caso de amostras pequenas (n < 30). Por outro lado,
quando o tamanho da amostra for grande, pequenos desvios da normalidade tendem a ser
estatisticamente significantes. Isso porque o valor de P depende tambm do tamanho da
amostra.

As principais transformaes usadas em estatstica so:

Para distribuies assimtricas direita (cauda direita mais longa):


Logaritmo base 10 de x
x = log10 x
Logaritmo base e de x
x = ln x
Raiz quadrada
x = x
Recproca
1
x =
x

Para distribuies assimtricas esquerda (cauda esquerda mais longa):


Quadrtica
x = x 2
Cbica
x = x 3

O Stata possui um comando automtico que faz vrias transformaes e testa a


normalidade das distribuies aps a transformao, tornando mais fcil a tarefa de
selecionar a melhor transformao.

A varivel var1 - dimetro do sarcoma das mamas tem distribuio assimtrica


direita. Vamos tentar as transformaes.

Comando pelo menu: No menu escolha Statistics, e a seguir clique em Summaries,


Tables, & Tests, Distributional Plots & Tests e Ladder of powers. Na caixa de dilogo,
indique var1. Clique finalmente em OK para concluir.

Apostila Stata 39
Comando digitado: ladder var1

. ladder var1

Transformation formula chi2(2) P(chi2)


------------------------------------------------------------------
cubic var1^3 26.06 0.000
square var1^2 19.05 0.000
identity var1 6.45 0.040
square root sqrt(var1) 0.72 0.699
log log(var1) 7.69 0.021
1/(square root) 1/sqrt(var1) 18.88 0.000
inverse 1/var1 26.62 0.000
1/square 1/(var1^2) 32.20 0.000
1/cubic 1/(var1^3) 33.24 0.000
Transformation formula chi2(2) P(chi2)
------------------------------------------------------------------

Note que apenas a transformao raiz quadrada foi efetiva (P valor > 0,05 no caso
0,699).

Voc tambm pode usar os comandos gladder var1 (Ladder of powers histograms)
para ver os histogramas com as variveis transformadas.

Digite qladder var1 para ver os grficos da normal (Ladder of powers normal quantile
plots) com as variveis transformadas.

Apostila Stata 40
Exerccios transformaes
Vamos agora trabalhar com o arquivo dcor.dta.

1) Pea a estatstica descritiva da varivel sbp (Presso arterial sistlica), faa


o histograma e o box-plot. Faa o teste de normalidade. Anote a mdia,
mediana e o coeficiente de assimetria. Anote o valor de P do teste da
normalidade. A varivel sbt em distribuio normal?
2) Teste transformaes para a varivel sbp usando os comandos ladder e
gladder. Qual a melhor transformao para esta varivel?

Apostila Stata 41
Testes de hipteses para mdias
A realizao de testes de hipteses uma das aplicaes mais usadas em
estatstica. Vamos agora verificar se a mdia do colesterol srico diferente para homens e
mulheres. Ou seja, precisamos utilizar teste de hiptese para a comparao de duas mdias
independentes.
Para isso, necessrio primeiro realizar a estatstica descritiva para a varivel
chol, para verificar se o colesterol srico possui distribuio normal. Se o pressuposto de que
se conhece a distribuio do parmetro na populao puder ser considerado realizaremos um
teste paramtrico. Caso contrrio teremos que realizar uma transformao ou apelar para um
teste no paramtrico (quando no se conhece a distribuio do parmetro na populao ou o
parmetro no segue uma distribuio conhecida).
Para verificar a normalidade, digite os seguintes comandos:

summ chol, detail

. summ chol, detail

chol
-------------------------------------------------------------
Percentiles Smallest
1% 142 96
5% 165 121
10% 178 126 Obs 1406
25% 200 126 Sum of Wgt. 1406

50% 231 Mean 234.7226


Largest Std. Dev. 46.29291
75% 264 405
90% 296 409 Variance 2143.033
95% 317 430 Skewness .4695448
99% 351 430 Kurtosis 3.496502

graph box chol

Apostila Stata 42
histogram chol, normal

swilk chol

. swilk chol

Shapiro-Wilk W test for normal data

Variable | Obs W V z Prob>z


-------------+--------------------------------------------------
chol | 1406 0.98705 11.143 6.052 0.00000

Observe que a mdia do colesterol srico relativamente prxima da mediana, o


coeficiente de assimetria est entre 1 e +1, mas o coeficiente de curtose 3,49, indicando
curva levemente leptocrtica. O box-plot lembra uma distribuio normal, mas tem alguns
pontos extremos acima. O teste da normalidade resultou em P valor < 0,001, indicando desvio
da normalidade.
Assumindo-se que o desvio da normalidade no grande e que a estatstica
paramtrica robusta na presena de pequenos desvios da normalidade, poderamos fazer o
teste t de Student, assumindo-se que as varincias populacionais sejam iguais, usando-se o
comando:

ttest chol, by(sex)

. ttest chol, by(sex)

Two-sample t test with equal variances


------------------------------------------------------------------------------
Group | Obs Mean Std. Err. Std. Dev. [95% Conf. Interval]
---------+--------------------------------------------------------------------
0 | 737 242.7096 1.786712 48.50521 239.202 246.2173
1 | 669 225.9238 1.62531 42.03871 222.7324 229.1151
---------+--------------------------------------------------------------------
combined | 1406 234.7226 1.234587 46.29291 232.3008 237.1445
---------+--------------------------------------------------------------------
diff | 16.78587 2.432033 12.01506 21.55668
------------------------------------------------------------------------------
diff = mean(0) - mean(1) t = 6.9020
Ho: diff = 0 degrees of freedom = 1404

Ha: diff < 0 Ha: diff != 0 Ha: diff > 0


Pr(T < t) = 1.0000 Pr(|T| > |t|) = 0.0000 Pr(T > t) = 0.0000

Apostila Stata 43
Observe que a mdia do colesterol srico foi maior para o sexo feminino (242.7
mg/100ml) do que para o masculino (225.9 mg/100ml). Como o valor de P foi <0,001, podemos
concluir que esta diferena foi estatisticamente significante.
Entretanto, o teste t de Student s pode ser usado se as varincias populacionais
forem iguais. ento necessrio realizar um teste formal de igualdade de varincias. Digite:

sdtest chol, by(sex)

. sdtest chol, by(sex)

Variance ratio test


------------------------------------------------------------------------------
Group | Obs Mean Std. Err. Std. Dev. [95% Conf. Interval]
---------+--------------------------------------------------------------------
0 | 737 242.7096 1.786712 48.50521 239.202 246.2173
1 | 669 225.9238 1.62531 42.03871 222.7324 229.1151
---------+--------------------------------------------------------------------
combined | 1406 234.7226 1.234587 46.29291 232.3008 237.1445
------------------------------------------------------------------------------
ratio = sd(0) / sd(1) f = 1.3313
Ho: ratio = 1 degrees of freedom = 736, 668

Ha: ratio < 1 Ha: ratio != 1 Ha: ratio > 1


Pr(F < f) = 0.9999 2*Pr(F > f) = 0.0002 Pr(F > f) = 0.0001

O p valor para a diferena entre as varincias foi < 0,05, ou seja, rejeitamos a
hiptese de nulidade e conclumos que a diferena entre as varincias estatisticamente
significante. Sendo assim, o teste t no se aplica a este caso.
Assim, podemos tentar realizar uma transformao e realizar o teste t de Student
com os dados transformados. Digite:

ladder chol

. ladder chol

Transformation formula chi2(2) P(chi2)


------------------------------------------------------------------
cubic chol^3 . 0.000
square chol^2 . 0.000
identity chol 47.87 0.000
square root sqrt(chol) 7.00 0.030
log log(chol) 8.17 0.017
1/(square root) 1/sqrt(chol) 56.66 0.000
inverse 1/chol . 0.000
1/square 1/(chol^2) . 0.000
1/cubic 1/(chol^3) . 0.000

Nenhuma transformao conseguiu normalizar a varivel chol, pois todos os P valores


so < 0,05.

Apostila Stata 44
Sendo assim, temos que realizar um teste no paramtrico (Mann-Whitney), que
indicado para se comparar duas mdias independentes, quando no se puder assumir
normalidade, com o comando:

ranksum chol, by(sex)

. ranksum chol, by(sex)

Two-sample Wilcoxon rank-sum (Mann-Whitney) test

sex | obs rank sum expected


-------------+---------------------------------
0 | 737 566938.5 518479.5
1 | 669 422182.5 470641.5
-------------+---------------------------------
combined | 1406 989121 989121

unadjusted variance 57810464


adjustment for ties -11840.056
----------
adjusted variance 57798624

Ho: chol(sex==0) = chol(sex==1)


z = 6.374
Prob > |z| = 0.0000

A nossa concluso no mudaria, pois o valor de P do teste no paramtrico tambm foi < 0,001.

Exerccios testes de hipteses

Agora, usando o arquivo dcor.dta, responda s questes abaixo:

1) Verifique se a presso arterial sistlica difere para os indivduos que apresentaram


doena coronariana e para aqueles que ao final do seguimento continuaram livres da doena.
Veja, dependendo da distribuio da varivel, se voc vai usar teste paramtrico com os
valores originais, teste paramtrico com os dados transformados ou teste no paramtrico.
2) Faa a mesma coisa para o colesterol srico.

Apostila Stata 45
Estimao: clculo do intervalo de confiana

O comando para clculo do intervalo de confiana no Stata :

ci <varivel>

s digitar ci seguido do nome da varivel de interesse. Abra o arquivo dcor.dta e


calcule o intervalo de confiana para o peso ao nascer das crianas (varivel chol). O
intervalo de confiana para mdias calculado supondo aproximao normal.

ci chol

. ci chol

Variable | Obs Mean Std. Err. [95% Conf. Interval]


-------------+---------------------------------------------------------------
chol | 1406 234.7226 1.234587 232.3008 237.1445

Podemos querer calcular o intervalo de confiana no de variveis gravadas em um


arquivo, mas de dados j processados em outro momento, isto , usar o Stata como
uma calculadora. No caso, basta usar a forma imediata do comando, ou seja, a forma
para simular uma calculadora, acrescentando i ao comando ci. Veja como funciona no
exemplo abaixo:

Em um estudo sobre avaliao de qualidade de maternidades ligadas ao SUS no


municpio de So Lus, observou-se que, em uma amostra de 362 nascimentos, 153
recm-nascidos tiveram a verificao do boletim de Apgar ao nascimento. Calcule o
intervalo de confiana de 95% para esta proporo. O intervalo de confiana
calculado usando a aproximao binomial, pelo comando abaixo:

cii <n> <frequncia do evento>

s substituir as incgnitas. n= 362, freqncia do evento=153. Desse modo:

cii 362 153

-- Binomial Exact --
Variable | Obs Mean Std. Err. [95% Conf. Interval]
---------+-------------------------------------------------------------
| 362 .4226519 .0259631 .3712006 .4753776

Para se obter o clculo do intervalo de confiana de 90%:

cii 362 153, level(90)

Apostila Stata 46
-- Binomial Exact --
Variable | Obs Mean Std. Err. [90% Conf. Interval]
---------+-------------------------------------------------------------
| 362 .4226519 .0259631 .3791524 .4670965

Para o clculo do intervalo de confiana de variveis categricas o Stata no possui um


comando que faa a tarefa automaticamente. Mas temos uma forma de faz-lo de forma
rpida. Primeiro temos que criar variveis dummy, codificadas em 0 e 1. Utilizando o
arquivo dcor.dta, no caso do sexo, vamos criar duas variveis dummy, uma para o sexo
masculino (sex1) e outra para o sexo feminino (sex2). Digite:

tabulate sex, generate(sex)

Para entender o que aconteceu, observe que o programa criou a varivel sex1, codificada
em 0 e 1, onde 1=feminino e 0=masculino.

tabulate sex1

sex== 0.0000| Freq. Percent Cum.


------------+-----------------------------------
0 | 669 47.58 47.58
1 | 737 52.42 100.00
------------+-----------------------------------
Total | 1406 100.00

E tambm a varivel sex2, codificada em 0=feminino e 1=masculino

tabulate sex2

sex== 1.0000| Freq. Percent Cum.


------------+-----------------------------------
0 | 737 52.42 52.42
1 | 669 47.58 100.00
------------+-----------------------------------
Total | 1406 100.00

Pea agora o comando ci (confidence interval) das duas variveis

ci sex1

Variable | Obs Mean Std. Err. [95% Conf. Interval]


---------+-------------------------------------------------------------
sex1 | 1406 .5241821 .0133237 .4980457 .5503185

Observe que 52,4% das observaes foram do sexo masculino, com um intervalo de
confiana de 49,8% a 55,0%.

Apostila Stata 47
ci sex2

Variable | Obs Mean Std. Err. [95% Conf. Interval]


---------+-------------------------------------------------------------
sex2 | 1406 .4758179 .0133237 .4496815 .5019543

Observe que 47,6% das observaes foram do sexo feminino, com um intervalo de
confiana de 45,0% a 50,2%. A criao automtica de variveis dummy uma grande
ferramenta do Stata que facilita bastante as tarefas de modelagem, como veremos
posteriormente.

Outras vezes, podemos querer calcular mdias separadas para cada categoria de uma
varivel qualitativa. Por exemplo, queremos estimar a mdia de colesterol para cada
sexo, com seu respectivo intervalo de confiana. Abra o arquivo dcor.dta. Pea uma
distribuio de freqncias da varivel sex.

. tab sex

sex | Freq. Percent Cum.


------------+-----------------------------------
0 | 737 52.42 52.42
1 | 669 47.58 100.00
------------+-----------------------------------
Total | 1,406 100.00

Vamos pedir agora a mdia do colesterol para cada sexo

tab sex, sum(chol)

. tab sex, sum(chol)

| Summary of chol
sex | Mean Std. Dev. Freq.
------------+------------------------------------
0 | 242.70963 48.505208 737
1 | 225.92377 42.03871 669
------------+------------------------------------
Total | 234.72262 46.292908 1406

Pea, agora, o intervalo de confiana do colesterol para cada sexo, mas primeiro
necessrio ordenar o arquivo pela varivel sexo:

sort sex
ci chol, by(sex)

Apostila Stata 48
. ci chol, by(sex)

-------------------------------------------------------------------------------------
-> sex = 0

Variable | Obs Mean Std. Err. [95% Conf. Interval]


-------------+---------------------------------------------------------------
chol | 737 242.7096 1.786712 239.202 246.2173

-------------------------------------------------------------------------------------
-> sex = 1

Variable | Obs Mean Std. Err. [95% Conf. Interval]


-------------+---------------------------------------------------------------
chol | 669 225.9238 1.62531 222.7324 229.1151

A forma imediata do comando para clculo do intervalo de confiana para mdias no


Stata :

cii <n> <mdia> <desvio padro>

Em Ribeiro Preto, em 1978, a mdia de peso ao nascer da populao dos nascidos vivos
de parto nico foi de 3234. Em 1994 a mdia de peso ao nascer de uma amostra de 2939
nascidos vivos de parto nico foi de 3113 quilos com desvio padro de 554 gramas.
Pergunta-se: a mdia de peso dos recm-nascidos de 1994 a mesma de 1978 ?

cii 2939 3113 554

Variable | Obs Mean Std. Err. [95% Conf. Interval]


---------+-------------------------------------------------------------
| 2939 3113 10.21904 3092.963 3133.037

Exerccios intervalo de confiana

1. O baixo peso ao nascer em Pelotas ocorreu em 512 nascimentos de um total de 5249


em 1993, em um estudo realizado em todas as maternidades, abrangendo nascidos
vivos naquele ano. Em 1982, de todos os 5914 nascimentos ocorridos naquele ano na
cidade, 534 apresentaram baixo peso. Faa os clculos necessrios. Houve um
aumento na proporo de baixo peso ?
2. Mathers et al. observaram que em uma amostra de 591 pacientes admitidos em um
hospital psiquitrico, 204 afirmaram ter usado maconha pelo menos uma vez na vida.
Construa um intervalo de confiana de 95% para esta proporo.
3. Calcule o intervalo de confiana para fumo (fumantes e no fumantes), no arquivo
dcor.dta
4. Calcule o intervalo de confiana para presso arterial sistlica, no arquivo dcor.dta.
5. Calcule o intervalo de confiana para mdia usando a varivel sbp e para proporo
de hipertensos, categorizando a varivel em sim (sbp 140) e no (sbp<140)

Apostila Stata 49
Clculo das medidas de risco risco relativo
e odds ratio cc, cs
Outra forma de se interpretar os resultados de uma associao epidemiolgica por
meio do clculo de uma medida de risco, como, por exemplo, a razo de chances (odds
ratio). O Stata vai calcular a estimativa pontual para esta medida de risco e seu
intervalo de confiana de 95% pelo mtodo de Cornfield (mais exato que o mtodo de
Woolf). Se o intervalo de confiana incluir o valor 1, considera-se que no h associao.
O comando cc (abreviatura de caso-controle) varivel resposta (no caso dc) e
exposio ou fator de risco (no exemplo fumo). Observe os resultado abaixo e
interprete-os.

cc dc fumo
fumo
Proportion
| Exposed Unexposed | Total Exposed
-----------------+------------------------+----------------------
Cases | 134 134 | 268 0.5000
Controls | 480 614 | 1094 0.4388
-----------------+------------------------+----------------------
Total | 614 748 | 1362 0.4508
| |
| Pt. Est. | [95% Conf. Interval]
|------------------------+----------------------
Odds ratio | 1.279167 | .9792724 1.670906 (Cornfield)
Attr. frac. ex. | .218241 | -.0211663 .4015223 (Cornfield)
Attr. frac. pop | .1091205 |
+-----------------------------------------------
chi2(1) = 3.26 Pr>chi2 = 0.0709

cc dc pas

pA sistolica - mmHg
Proportion
| Exposed Unexposed | Total Exposed
-----------------+------------------------+----------------------
Cases | 95 173 | 268 0.3545
Controls | 201 894 | 1095 0.1836
-----------------+------------------------+----------------------
Total | 296 1067 | 1363 0.2172
| |
| Pt. Est. | [95% Conf. Interval]
|------------------------+----------------------
Odds ratio | 2.442412 | 1.822462 3.273429 (Cornfield)
Attr. frac. ex. | .5905687 | .4512916 .69451 (Cornfield)
Attr. frac. pop | .2093434 |
+-----------------------------------------------
chi2(1) = 37.00 Pr>chi2 = 0.0000

Para se obter o risco relativo (risk ratio), utiliza-se o comando cs. O clculo do risco de
doena coronria, comparando homens com mulheres obtido pelo comando:

Apostila Stata 50
cs dc sex

sex
| Exposed Unexposed | Total
-----------------+------------------------+----------
Cases | 164 104 | 268
Noncases | 479 616 | 1095
-----------------+------------------------+----------
Total | 643 720 | 1363
| |
Risk | .2550544 .1444444 | .1966251
| |
| Pt. Est. | [95% Conf. Interval]
|------------------------+----------------------
Risk difference | .11061 | .0682488 .1529711
Risk ratio | 1.765761 | 1.414969 2.203521
Attr. frac. ex. | .4336721 | .2932706 .5461809
Attr. frac. pop | .2653814 |
+-----------------------------------------------
chi2(1) = 26.31 Pr>chi2 = 0.0000

Exerccios arquivo dcor.dta


1. Crie uma nova varivel, idade, e recodifique as idades em 4 classes: 45 a 49, 50 a
54, 55 a 59 e 60 a 62.
2. Pea uma distribuio de freqncia da varivel idade.
3. Pea uma tabela de contingncia de idade e doena coronariana. Qual a incidncia de
doena coronariana em cada faixa etria ?
4. Rotule a varivel Sex (masculino e feminino)
5. Pea uma tabela de contingncia de sexo e doena coronariana.
6. Calcule a razo de chances entre sexo e doena coronariana.
7. Obtenha o risco relativo entre sexo masculino e doena coronariana.
8. Utilizando o comando summarize calcule a mdia do colesterol srico nesta
populao.
9. Calcule a mdia da presso arterial sistlica.
10. Recodifique a varivel death e calcule a taxa de mortalidade nesta populao.

Apostila Stata 51
Clculo do risco por regresso logstica
logit, logistic

Outra forma de se avaliar uma associao epidemiolgica atravs de modelos


estatsticos. Geralmente a grande questo a ser respondida nos estudos epidemiolgicos
saber qual a relao entre uma ou mais variveis que refletem a exposio e a doena
(efeito). Para uma dada pessoa, y a doena real um evento dicotmico, que pode ser
entendido como 1 quando a doena ocorre e 0 quando esta no ocorre. A exposio pode
ser medida como uma varivel contnua, como uma varivel dicotmica (sim e no) ou
como uma varivel categrica com mais de dois nveis.

A regresso logstica uma forma de modelagem que usada quando a varivel resposta
dicotmica. Para isso, precisaremos codificar a varivel resposta em 0(zero) e 1(um).
Codificaremos zero quando o evento no tiver ocorrido e 1 quando o evento tiver
ocorrido. No nosso exemplo, a partir do arquivo dcor.dta, nossa varivel resposta
doena coronariana, codificada em 0 (ausente) e 1 (presente).

No exemplo abaixo vamos, por meio da regresso logstica uma estimativa do coeficiente
Beta1 (1) para presso sistlica muito elevada em relao doena coronariana. A nossa
varivel explanatria, ou fator de risco, foi codificada como 1 quando a presso arterial
sistlica foi 165 mmHg e 0 quando < 165 mmHg. Se o coeficiente for positivo e o seu
intervalo de confiana no incluir o valor zero, a exposio um fator de risco para a
doena. Se o coeficiente for negativo e o intervalo de confiana tambm no incluir o
valor zero, a exposio um fator de proteo em relao doena. Qualquer que seja o
sinal do coeficiente 1, se o seu intervalo de confiana incluir o valor 0, no h
associao entre a exposio em anlise e a doena.

Varivel dicotmica
logit dc pas

Iteration 0: Log Likelihood =-675.62283


Iteration 1: Log Likelihood =-659.21838
Iteration 2: Log Likelihood =-658.65449
Iteration 3: Log Likelihood =-658.65427

Logit Estimates Number of obs = 1363


chi2(1) = 33.94
Prob > chi2 = 0.0000
Log Likelihood = -658.65427 Pseudo R2 = 0.0251

------------------------------------------------------------------------------
dc | Coef. Std. Err. z P>|z| [95% Conf. Interval]
---------+--------------------------------------------------------------------
pas | .8929862 .1496675 5.966 0.000 .5996433 1.186329
_cons | -1.642414 .0830597 -19.774 0.000 -1.805208 -1.47962
------------------------------------------------------------------------------

Apostila Stata 52
No exemplo acima, o coeficiente 1 foi 0,89 e o seu intervalo de confiana de 95% foi
(0,60-1,19), portanto no inclui o zero e pode-se considerar a exposio em estudo como
um fator de risco para a doena coronariana. O programa tambm faz o clculo do teste
de hiptese para a varivel presso sistlica, que no caso deu um valor de p < 0,001,
portanto estatisticamente significante, corroborando o mesmo resultado acima
expresso. Observe que o resultado do teste de hipteses realizado na modelagem
idntico ao resultado do qui-quadrado obtido anteriormente pelo comando tabulate.
Outra forma de se avaliar uma associao epidemiolgica pela exponenciao do
coeficiente obtido por modelagem. No caso da regresso logstica, exponenciando-se o
coeficiente 1 obtm-se a razo de chances, ou odds ratio:

e 1 = Odds ratio

e 0,89 = 2,44

No precisamos realizar este clculo manualmente. Basta usar o comando logistic e


obteremos a razo de chances e seu intervalo de confiana de 95%. Observe que os
resultados para a RC so idnticos quando se calcula esta medida atravs do comando
cc, utilizando a frmula ad/bc. O teste de hiptese calculado o mesmo j exibido pelo
comando logit anteriormente.

logistic dc pas

Logit Estimates Number of obs = 1363


chi2(1) = 33.94
Prob > chi2 = 0.0000
Log Likelihood = -658.65427 Pseudo R2 = 0.0251

------------------------------------------------------------------------------
dc | Odds Ratio Std. Err. z P>|z| [95% Conf. Interval]
---------+--------------------------------------------------------------------
pas | 2.442412 .3655496 5.966 0.000 1.821469 3.275036
------------------------------------------------------------------------------

Os mesmos procedimentos foram realizados agora para testar-se a associao entre


fumo e doena coronariana. Interprete os resultados. O fumo um fator de risco para
doena coronariana?

logit dc fumo

Iteration 0: Log Likelihood = -675.4038


Iteration 1: Log Likelihood =-673.78134
Iteration 2: Log Likelihood =-673.77903
Logit Estimates Number of obs = 1362
chi2(1) = 3.25
Prob > chi2 = 0.0714
Log Likelihood = -673.77903 Pseudo R2 = 0.0024

------------------------------------------------------------------------------
dc | Coef. Std. Err. z P>|z| [95% Conf. Interval]
---------+--------------------------------------------------------------------
fumo | .2462088 .1365185 1.803 0.071 -.0213625 .5137802
_cons | -1.522155 .0953484 -15.964 0.000 -1.709035 -1.335276
------------------------------------------------------------------------------

Apostila Stata 53
logistic dc fumo

Logit Estimates Number of obs = 1362


chi2(1) = 3.25
Prob > chi2 = 0.0714
Log Likelihood = -673.77903 Pseudo R2 = 0.0024

------------------------------------------------------------------------------
dc | Odds Ratio Std. Err. z P>|z| [95% Conf. Interval]
---------+--------------------------------------------------------------------
fumo | 1.279167 .1746299 1.803 0.071 .978864 1.671598
------------------------------------------------------------------------------

Se desejamos saber se a hipertenso est associada a maior risco de doena


coronariana, geralmente desejamos controlar o efeito de outras variveis de
confundimento. No modelo logstico, usamos os valores de uma srie de variveis
independentes para predizer a ocorrncia da doena (varivel dependente). Assim,
todas as variveis consideradas no modelo esto controladas entre si. Como usamos uma
srie de variveis independentes, trata-se de um problema multivarivel (no confundir
como multivariado, termo usado quando se leva em conta uma srie de variveis
dependentes (resposta) no modelo ao mesmo tempo e empregado geralmente fora do
contexto estatstico na literatura biomdica). A medida de associao calculada a partir
do modelo logstico o odds ratio. Os odds ratio ajustados so obtidos atravs da
comparao de indivduos que diferem apenas na caracterstica de interesse e que
tenham os valores das outras variveis constantes. O ajuste apenas estatstico.

No nosso exemplo, os hipertensos podem ter maior risco de doena coronariana no


pela hipertenso em si, mas porque uma maior proporo dos hipertensos sejam homens
ou mulheres e a doena coronariana mais frequente em indivduos do sexo masculino.
Desta forma, para saber se a hipertenso um fator de risco para doena coronariana,
precisaremos tambm controlar para sexo no modelo, alm de outros potenciais fatores
de confuso.

Vamos ver se o sexo pode ser um fator de confuso para a associao entre
hipertenso e doena coronariana?

1) O sexo est associado com a doena coronariana?

logistic dc sex

Apostila Stata 54
. logistic dc sex

Logistic regression Number of obs = 1363


LR chi2(1) = 26.38
Prob > chi2 = 0.0000
Log likelihood = -662.43247 Pseudo R2 = 0.0195

------------------------------------------------------------------------------
dc | Odds Ratio Std. Err. z P>|z| [95% Conf. Interval]
-------------+----------------------------------------------------------------
sex | 2.027943 .2826344 5.07 0.000 1.543205 2.664941
_cons | .1688312 .0178983 -16.78 0.000 .1371558 .2078218
------------------------------------------------------------------------------

Vimos que sim, pois homens tm risco 2.03 vezes maior de ter doena coronria em
comparao com as mulheres e o intervalo de confiana no inclui o 1.

2) A hipertenso est associada com o sexo?

tab sex pas, row chi2

. tab sex pas, row chi2

+----------------+
| Key |
|----------------|
| frequency |
| row percentage |
+----------------+

| pas
sex | 0 1 | Total
-----------+----------------------+----------
0 | 537 200 | 737
| 72.86 27.14 | 100.00
-----------+----------------------+----------
1 | 556 113 | 669
| 83.11 16.89 | 100.00
-----------+----------------------+----------
Total | 1,093 313 | 1,406
| 77.74 22.26 | 100.00

Pearson chi2(1) = 21.2734 Pr = 0.000

O sexo est codificado 0=feminino e 1=masculino. Vemos que a hipertenso foi mais
comum nas mulheres, 27,1%, do que no homens, 16,9%.
Assim, como o sexo um fator de risco para hipertenso e o sexo est associado com
a hipertenso, precisamos controlar no modelo o efeito do sexo.

No exemplo:

logistic dc pas sex

Apostila Stata 55
. logistic dc pas sex

Logistic regression Number of obs = 1363


LR chi2(2) = 70.30
Prob > chi2 = 0.0000
Log likelihood = -640.47488 Pseudo R2 = 0.0520

------------------------------------------------------------------------------
dc | Odds Ratio Std. Err. z P>|z| [95% Conf. Interval]
-------------+----------------------------------------------------------------
pas | 2.860407 .4453845 6.75 0.000 2.108094 3.881196
sex | 2.357504 .3420721 5.91 0.000 1.773959 3.133005
_cons | .1181566 .0148782 -16.96 0.000 .0923157 .1512308
------------------------------------------------------------------------------

Como pode ser verificado no modelo, a hipertenso um fator de risco para doena
coronariana, mesmo aps se controlar para a varivel sexo no modelo multivarivel.

Varivel contnua
Vamos realizar os mesmo procedimentos para a varivel age, quantitativa contnua.

logistic dc age

. logistic dc age

Logistic regression Number of obs = 1363


LR chi2(1) = 21.08
Prob > chi2 = 0.0000
Log likelihood = -665.08235 Pseudo R2 = 0.0156

------------------------------------------------------------------------------
dc | Odds Ratio Std. Err. z P>|z| [95% Conf. Interval]
-------------+----------------------------------------------------------------
age | 1.068024 .0154488 4.55 0.000 1.03817 1.098736
_cons | .0075643 .0058527 -6.31 0.000 .0016603 .0344639
------------------------------------------------------------------------------

O odds ratio para idade 1,068. O odds ratio para cada ano de incremento na idade
1,068, ou seja, a cada ano de idade, h um aumento de 6,8% no risco de doena
coronariana. O intervalo de confiana no incluiu o 1, indicando que a idade um fator de
risco para doena coronria nesta populao. Observe que a idade est modelada como
varivel contnua. Desta forma o odds ratio interpretado para cada variao de uma
unidade na varivel explanatria (no caso para cada ano de idade). O odds ratio de uma
varivel contnua representa uma mdia dos odds nos diversos nveis desta varivel.

Como dito acima, age foi modelada como varivel contnua. Um dos poucos pressupostos
do modelo logstico que voc s pode modelar uma varivel como contnua se houver
evidncia de linearidade, ou seja de que para cada incremento na idade, corresponda um
decrscimo ou acrscimo na probabilidade de ocorrncia do evento, no caso, de doena
coronariana. necessrio verificar se este pressuposto se aplica no caso da idade. Se se
aplicar podemos continuar modelando age como varivel contnua. Se no se aplicar,
passaremos a modelar age como uma varivel categrica, a partir de pontos de corte de
significado biolgico ou baseados em quartis. H vrias formas de testar este

Apostila Stata 56
pressuposto. Numa delas, se plota em um grfico a idade versus a probabilidade de
ocorrncia de doena coronariana predita pelo modelo. Os comandos no Stata so:

predict probdc
label variable probdc Probabilidade predita de Doenca Coronariana
twoway (connected probdc age)

Como se pode verificar no grfico acima h uma tendncia praticamente linear de


aumento na probabilidade de doena coronria predita pelo modelo medida em que
aumenta a idade. Portanto, a idade pode ser modelada como uma varivel quantitativa
contnua no modelo.

Apostila Stata 57
Varivel categrica com mais de dois nveis
Como se faz se a varivel categrica tem mais de dois nveis? Queremos saber
se o consumo de 1 a 9 cigarros, de 10 a 19 cigarros e 20 cigarros esto associados com
a doena coronria. Primeiro vamos criar uma nova varivel fumo, com quatro categorias

Cig Fumo
0 0
1a9 1
10 a 19 2
20 a 60 3
99 .

gen fumo=cig
recode fumo 1/9=1 10/19=2 20/60=3 99=.

Gostaramos, no modelo, de calcular trs odds ratios, para 1 a 9 cigarros, 10 a 19


cigarros e 20 cigarros em relao aos no fumantes.

No caso da varivel fumo, categrica, no podemos fazer a regresso sem antes fator-
la e transform-la em 3 variveis dummy (categricas 0 1), conforme esquema abaixo:

fumo fumo1 fumo2 fumo3


11a9 1 0 0
2 10 a 19 0 1 0
3 20 0 0 1

No caso, a varivel fumo1 a varivel dummy para fumar de 1 a 9 cigarros. Ela assumir
o valor 1 quando o indivduo fumou de 1 a 9 cigarros e 0 nos demais casos. A varivel
fumo2 assumir o valor 1 quando a pessoa fumou de 10 a 19 cigarros e 0 nos demais
casos e a varivel fumo3 assumir o valor 1 quando o indivduo fumou 20 cigarros por
dia e 0 nos demais casos. Observe que para cada categoria da varivel ser criada uma
varivel dummy.

O Stata tem um comando para gerar variveis dummy automaticamente, usando xi.
Verifique digitando:

xi: logistic dc i.fumo

Apostila Stata 58
. xi: logistic dc i.fumo
i.fumo _Ifumo_0-3 (naturally coded; _Ifumo_0 omitted)

Logistic regression Number of obs = 1362


LR chi2(3) = 6.84
Prob > chi2 = 0.0773
Log likelihood = -671.98586 Pseudo R2 = 0.0051

------------------------------------------------------------------------------
dc | Odds Ratio Std. Err. z P>|z| [95% Conf. Interval]
-------------+----------------------------------------------------------------
_Ifumo_1 | .9019861 .2152808 -0.43 0.666 .564989 1.439991
_Ifumo_2 | 1.40158 .3413577 1.39 0.166 .8695732 2.259071
_Ifumo_3 | 1.41908 .2237961 2.22 0.026 1.041761 1.933061
_cons | .218241 .020809 -15.96 0.000 .1810404 .2630857
------------------------------------------------------------------------------

Como vemos no modelo, fumar de 10 a 19 cigarros est associado a um aumento no


significante de 40% no risco de doena coronria e fumar 20 cigarros por dia, est
associado a um aumento significante do risco de doena coronria de 42%, pois o valor
de P foi de 0,026 e o intervalo de confiana incluiu o valor 1.

Exerccios regresso logstica

1. Obtenha a razo de chances entre colesterol srico e doena coronariana pelo modelo
logstico, modelando a varivel colesterol como contnua.
2. Verifique o pressuposto de que a relao entre o nvel de colesterol srico e a
probabilidade de ocorrncia de doena coronariana seja linear.
3. Obtenha a razo de chances entre colesterol srico e doena coronariana pelo modelo
logstico, categorizando o colesterol em trs nveis: 96 a 219=normal 220 a 259=mdio
260 a 430=alto.

Apostila Stata 59

Potrebbero piacerti anche