Conceitos básicos de amostragem usando o R · 2017-10-09 · Conceitos básicos de amostragem...

Preview:

Citation preview

Conceitos básicos de amostragem usando o R

Leo Bastos

MGEST, 2 e 3-de outubro de 2014

Conteúdo

1. Ferramentas básicasI População ou processo?I Amostras probabilísticas, pesos amostraisI Exemplos de microdados

2. SoftwareI Por que R?I Baixando e instalando pacotesI O pacote survey

3. Análise de amostras complexas usando o surveyI amostra aleatória simples, estratificada, por conglomerados

Referência principal

Ferramentas básicas

I População ou processo?I Amostras probabilísticasI Pesos amostraisI Exemplos de microdados

População ou processo?

I A maioria dos estatísticos trabalham com processosI Assumem que os dados são realizações de um processo

aleatórioI Podem (ou não) atribuir uma distribuição de probabilidades a

esse processoI Abordagem baseada em modelo, model-based

População ou processo?

I Em contraste, a análise de dados complexos é baseada nodesenho, design-based

I Assume que os dados da população são desconhecidos, porémfixos

I Sob a ótica frequentista não há distribuição de probabilidadepara uma variável

I A aleatoriedade se dá através do desenho, a amostra éaleatória.

População ou processo?

I Análise design-based: Usando a amostra do CENSO de 2010,pode-se estimar a distribuição de renda da população por sexono estado de Minas Gerais.

I As distribuições são estimadas usando a amostra e os pesosamostrais

I Análise modelo-based: Uma empresa em Minas Gerais foiacionada judicialmente por ter salários diferentes entre homense mulheres.

I Os salários são todos conhecidos pela empresa, um teste dehipóteses pode ser realizado para verificar se as médias dosrendimentos por gênero são iguais.

Amostras probabilísticas

I “Selecionamos uma amostra aleatória de tamanho 1000”I O conceito fundamental da inferência baseada no desenho é aamostra aleatória ou amostra probabilística

I Lei Forte dos Grandes Números nos permite afirmar queuma amostra de tamanho 1000 é representativa para apopulação de interesse, quando o interesse é estimar médiase/ou proporções.

P( limn→∞

|X̄ − µ| < ε) = 1

Teorema Central do Limite

I No livro do Barry James tem uma nota sobre o nome doTeorema.

I Existem várias versões para o TCL (Levy, Lindeberg,Liapunov,..)

I Seja X1,X2, . . . v.a.s i.i.d. com média µ e variância finitaσ2 > 0, então

X̄ − µσ→d N(0, 1/n)

I Independência pode ser uma suposição forte quando apopulação é finita.

I Baseado nesse resultado podemos, por exemplo, construir umIC de 95%.

Versão especial do TCL para AAS sem reposição

I Existe uma versão especial do TCL para AAS sem reposição deuma população finita (Erdos and Renyi, 1959).

x̄n − µN√var(x̄n)

→d N(0, 1)

quando n cresce e N − n ainda é grande.

I Se a amostra não for AAS, ainda pode-se ter aguma forma doTCL. Mas deve-se tomar cuidado ao construir intervalos erealizar testes de hipóteses.

Propriedades de uma amostra probabilística

I Propriedades1. Cada indivíduo da população DEVE ter uma probabilidade

πi > 02. A probabilidade πi deve ser conhecida para todo indivíduo que

cair na amostra.3. Todo par (i , j) de indivíduos da população DEVE ter

probabilidade πij > 04. A probabilidade πij deve ser conhecida para todo par de

indivíduos da amostra.

I 1 e 2 são necessários, enquanto 3 e 4 dependem de πij quepode ser calculado segundo o desenho.

Peso amostral

I Se pegarmos uma amostra aleatória de tamanho 2500 de BH(Pop. 2,5 milhões hab.), então cada pessoa teria chance de 1em mil de ser selecionada.

I Cada pessoa amostrada em BH representaria 1000belorizontinos.

I Se por acaso, 500 pessoas amostradas tiverem hipertensão,significa que BH tem 500.000 hipertensos (500 * 1000).

Peso amostral

I Se pegarmos uma amostra de tamanho 2500 de Diamantina(Pop. 50 mil hab.), então cada pessoa teria probabilidade de20%, ou 200 em mil, de ser selecionada.

I Cada pessoa amostrada em Diamantina representaria 5diamantinenses.

I Se por acaso, 500 pessoas amostradas tiverem hipertensão,significa que Diamantina tem 10.000 hipertensos (200 * 500).

Peso amostral

I A ideia fundamental por trás da inferência baseada no desenhoé que uma pessoa amostrada com probabilidade πi de serselecionada representa 1/πi pessoas daquela população.

I ωi = 1/πi é chamado de peso amostralI Suponha que estamos interessado em um total de uma variável

X (e.g. renda) da populaçãoI A contribuição de cada indivíduo amostrada para o total é

dada porXiωi =

Xiπi

Pesos

Estimador Horvitz-Thompson

I O estimador Horvitz-Thompson para o total (Horvitz andThompson, 1952, JASA)

T̂HT =n∑

i=1

Xiπi

I O estimador da variância de T̂HT

V̂ar [T̂ ] =∑i ,j

(XiXjπij− Xiπi

Xjπj

)

Outros pesos

I Sample weights um peso de 1000 significa que a observaçãorepresenta 1000 indivíduos daquela população.

I precision weights um peso de 1000 significa que a observaçãotem uma variância 1000 vezes menos que uma observação depeso 1.

I frequency weights um peso de 1000 significa que a amostracontêm 1000 observações identicas e espaço (computacional)está sendo salvo representando-os com apenas uma observação.

Exemplo de microdados (Saúde)

I Pesquisa Nacional sobre o uso de crack (Fiocruz/SENAD):Uma amostra geograficamente estratificada, com dois ou trêsestágios de seleção, usando o método TLS para seleção decenas e períodos para realização da pesquisa, com o empregodo método de amostragem inversa no último estágio (Haldane,1945), onde usuários eram entrevistados até que fosse obtidoum número fixo a priori de recrutamentos efetivos.

I Pesquisa Nascer no Brasil: Amostra de hospitaisgeograficamente estratificada, com propobabilidadeproporcional ao número de nascidos vivos em 2007, eamostragem inversa usada para selecionar número de dias atéque fossem realizadas 90 entrevistas com puérperas.

Exemplos de microdados (IBGE)

I Amostra do Censo demográfico de 2010. Investiga maisinformações que o censo, usando a estrutura do Censo.

I Pesquisa Nacional de Amostras por Domicílio (PNAD).Investiga anualmente, entre censos, característicasdemográficas e socioeconômicas da população.

I Pesquisa de Orçamentos Familiares (POF). Investiga acomposição dos orçamentos domésticos.

Exemplos de microdados (pacote survey)

I API: Academic performance index. Censo realizado naCalifornia com todas escolas com mais que 100 alunos.Diferentes amostras probabilísticas foram sorteadas dessebanco. Será o banco usado para ilustrarmos os métodos.(disponível no R) (N=6194 escolas)

I US 2004 election: Amostra proporcional ao número de eleitorespor estado ou condado da eleição presidencial americana noano de 2004.

I NHANES: The National Health and Nutrition ExaminationSurvey [http://www.cdc.gov/nchs/nhanes.htm]

Software

I Por que R?I Baixando e instalando pacotesI O pacote survey

Software

I Existem alguns softwares que fazem inferência baseada emdesenho.

I SUDAAN [http://www.rti.org/sudaan/]I SASI SPSSI STATAI Epi InfoI R

Por que R?

I Por que usar o R?I Software livreI Alto número de pacotes desenvolvidos e em desenvolvimentoI Elevado número de usuários e desenvolvedores

Pré requisitos

I Pré-requisitos de sistemaI Praticamente não há;I Eu recomendo: GNU/Linux 64 bitsI Quanto mais memória RAM melhorI Permite:

I computação paralelaI CUDAI uso de softwares externosI etc

Baixando o R e instalando pacotes

I Site do R [http://www.r-project.org]I R version 3.1.1 (Sock it to Me) has been released on

2014-07-10.

I RStudio (editor de texto integrado com R)[http://www.rstudio.com]

I Instalando pacotes no R

install.packages("nome_do_pacote")

O pacote survey

I A grande maioria dos pacotes desenvolvidos n R são paramétodos de inferência baseada em modelos.

I Existem alguns pacotes (poucos) desenvolvidos para inferênciabaseada no desenho.

I O pacote survey, é um pacote dedicado a análise de dadosamostrais complexos

I Desenvolvido por Prof. Thomas Lumley (The University ofAuckland)

I [http://r-survey.r-forge.r-project.org/survey/]

# Instalando o pacoteinstall.packages("survey")

# Chamando o pacote no Rrequire(survey)

Comandos básicos

# Chamando a biblioteca surveyrequire(survey)

## Loading required package: survey## Loading required package: grid#### Attaching package: 'survey'#### The following object is masked from 'package:graphics':#### dotchart

# Carregando os dados que vamos usar# Academic performance index)data(api)

Comandos básicos

# Apresenta a descrição do banco e das 37 variáveis presentes?api

# Suponha que estamos interessados no total de estudantes do estudo (enroll)T.x <- sum(apipop$enroll, na.rm = T)T.x

## [1] 3811472

# Número médio de crianças por escolamean.x <- mean(apipop$enroll, na.rm = T)mean.x

## [1] 619

Comandos básicos

hist(apipop$enroll, col=2, xlab="Número médio de alunos por escola", main="")

Número médio de alunos por escola

Fre

quen

cy

0 1000 2000 3000 4000

050

010

0015

0020

0025

0030

00

Comandos básicos

n <- 200

# Gerando 1000 amostras de tamanho n=200 e calculando a média para cada amostramedias.api <- rep(NA,1000)for(i in 1:1000)

medias.api[i] <- mean(sample(apipop$enroll, n), na.rm=T)

Comandos básicos

Número médio de alunos por escola

Fre

quên

cia

550 600 650 700

0.00

00.

002

0.00

40.

006

0.00

80.

010

0.01

2

Análise de amostras complexas usando o survey

I amostra aleatória simples,I amostra estratificadaI amostra por conglomerados

Amostra aleatória simples

I Seja amostra aleatória simples de tamanho n de umapopulação de tamanho N

I Cada indivíduo tem probabilidade n/N de ser selecionado.I Logo o peso, ωi de cada indivíduo é dado por N/nI Suponha que estamos interessados na característica X

I Total: TX =∑N

i=1 XiI Na média: µX = TX/N

Amostra aleatória simples

I O Estimador Horvitz-Thompson para o total da variável X é

T̂X =n∑

i=1ωiXi =

Nn

n∑i=1

Xi

I E a variância é dada por

V[T̂X ] =N − n

N N2V[X ]

n

Amostra aleatória simples

I O Estimador Horvitz-Thompson para a média da variável X é

µ̂X =T̂XN = x̄n

I E a variância é dada por

V[µ̂X ] =N − n

NV[X ]

n

Outras estatísticas incluíndo o plano amostral

I Médias e totaisI QuantisI Frequências por classesI Gráficos

I HistogramasI Boxplots

I etc

Amostra aleatória simples no survey

I Apesar da amostra aleatória simples não precisar de umsoftware especializado para a análise, vamos usar o survey parailustrar as funções do pacote.

I O primeiro passo é descrever para o R qual o desenho, para issousa-se a função svydesign

# Definindo o desenhosrs_design <- svydesign( id=~1, fpc=~fpc, data=apisrs)# id = ~1 significa que que não tem clusters (~0 tb funcionaria)# fpc = ~fpc correção de população finita ~fpc mostra qual# variável do banco contém o tamanho da população# data - data frame com os dados gerados

Amostra aleatória simples no survey

Total de alunos: 3.8 milhões; Alunos por escola: 619

# Estimando o total de alunossvytotal(~enroll, srs_design)

## total SE## enroll 3621074 169520

# Estimando a média de alunos por escolasvymean(~enroll, srs_design)

## mean SE## enroll 585 27.4

Histogramas para o número de alunosSurvey weighted

enroll

Den

sity

0 1000 2000 3000 4000

0.00

000.

0002

0.00

040.

0006

0.00

080.

0010

0.00

12Sample unweighted

apistrat$enroll

Den

sity

0 1000 2000 3000 4000

0.00

000.

0002

0.00

040.

0006

0.00

080.

0010

0.00

12

Population

apipop$enrollD

ensi

ty0 1000 2000 3000 4000

0.00

000.

0002

0.00

040.

0006

0.00

080.

0010

0.00

12

Amostra aleatória simples no survey

# Estimando o desempenho acadêmico nos anos 2000 e 1999svymean(~api00+api99, srs_design)

## mean SE## api00 657 9.25## api99 625 9.50

# Valores da populaçãoapply(apipop[,c("api00","api99")],2,mean)

## api00 api99## 664.7 631.9

Amostra aleatória simples no survey

I Se que o tamanho da população não seja especificado, énecessário a probabilidades de seleção ou pesos amostrais

I O peso é dado por 6194/200, e está calculado na variável pw

nofpc <- svydesign( id=~1, weights=~pw, data=apisrs)svytotal(~enroll, nofpc)

## total SE## enroll 3621074 172325

svymean(~enroll, nofpc)

## mean SE## enroll 585 27.8

Amostra aleatória simples no survey

I As funções também se aplicam a fatores (stype - school type)

svytotal(~stype, srs_design)

## total SE## stypeE 4398 196## stypeH 774 143## stypeM 1022 160

Boxplot para o número de alunos por tipo de escola

E H M

500

1000

1500

2000

Boxplot para API00 por tipo de escola

E H M

400

500

600

700

800

900

Amostra aleatória estratificada

I A AAE é usada quando a população pode ser particionada emgrupos, chamados estratos

I Dentro de cada estrato, uma amostra probabilística éselecionada.

I Nesse desenho, é garantido que haverá individuos selecionadosem todos os estratos.

I A amostras variam menos, logo é um desenho mais preciso quea AAS

I Os tamanhos dos estratos devem ser conhecidos a priori

Amostra aleatória estratificada

I Vamos supor que dentro de cada estrato, será realizado umaAAS

I Seja K o número de estratosI Nk a população de cada estrato, k = 1, 2, . . . ,KI nk a amostra a ser selecionada em cada estrato.I Xik a característica de interesse do indivíduo i no estrato kI O total de X é dado por

TX =K∑

k=1TXk =

K∑k=1

nk∑i=1

Xik

Amostra aleatória estratifica

I O Estimador Horvitz-Thompson para o total da variável X édado pela soma dos estimadores por estrato.

T̂X =K∑

k=1T̂Xk

I O estimador Horvitz-Thompson por estrato

T̂Xk =Nknk

nk∑i=1

Xi

I E a variância de T̂X é dada pela soma das variâncias.

Amostra aleatória estratificada

I O Estimador Horvitz-Thompson para a média da variável X naAAE é

µ̂X =K∑

k=1

NkN x̄k

I E a variância é dada por

V[µ̂X ] =K∑

k=1

(NkN

)2 Nk − nkNk

V[Xk ]

nk

Amostra aleatória estratificada

I No exemplo do índice de desempenho acadêmico na Califórnia,foi selecionado uma AAE, onde os estratos foram o tipo deescola.

table(apipop$stype)

#### E H M## 4421 755 1018

I 200 escolas foram selecionadas, nE = 100, nH = nM = 50

Amostra aleatória estratificada no survey

# Preparando o desenhostrat_design <- svydesign(ids = ~1, strata = ~stype, fpc = ~fpc, data = apistrat)strat_design

## Stratified Independent Sampling design## svydesign(ids = ~1, strata = ~stype, fpc = ~fpc, data = apistrat)

# Estimando o total de alunos na Californiasvytotal(~enroll, strat_design)

## total SE## enroll 3687178 114642

Amostra aleatória estratificada no survey

# Estimando o número de alunos por escolasvymean(~enroll, strat_design)

## mean SE## enroll 595 18.5

# Estimando o desempenho acadêmico nos anos 2000 e 1999svymean(~api00+api99, strat_design)

## mean SE## api00 662 9.41## api99 629 9.96

Amostra aleatória estratificada no survey

Como dentro de cada estrato, tem-se uma AAS, podemos calcularas estimativas dentro de cada estrato:

# Estrato das escolas elementaressrs_designE <- subset(strat_design, stype=="E")# Estimando o desempenho acadêmico nos anos 2000 e 1999svymean(~api00+api99, srs_designE)

## mean SE## api00 674 12.4## api99 636 13.2

Amostra aleatória estratificada no survey# Estrato das middle schoolsrs_designM <- subset(strat_design, stype=="M")svymean(~api00+api99, srs_designM)

## mean SE## api00 637 16.2## api99 610 16.3

# Estrato das high schoolsrs_designH <- subset(strat_design, stype=="H")svymean(~api00+api99, srs_designH)

## mean SE## api00 626 14.9## api99 617 15.3

Amostra aleatória estratificada no survey

O mesmo usando a função svyby :

# Desempenho acadêmico por tipo de escolasvyby(~api00+api99, ~stype, svymean, design=strat_design)

## stype api00 api99 se.api00 se.api99## E E 674.4 635.9 12.38 13.19## H H 625.8 617.4 14.94 15.27## M M 636.6 610.2 16.21 16.34

Boxplot para API00 por tipo de escola

E H M

400

500

600

700

800

900

1000

AAS

E H M

400

500

600

700

800

900

1000

AAE

Estratificação (outra visão)

I Estratificar é dividir a população em subpopulaçõesI Na epidemiologia é comum usar o termo estratificação para se

referir a subpopulações que podem ou não fazer parte dodesenho.

I Se fazem parte do desenho, temos a amostragem estratificadacomo vimos.

I Se não, a situação é um pouco mais complicada. Pois quandoa subpopulação não é um estrato, as probabilidades de inclusãonão são as mesmas caso a subpopulação fosse um estrato.

I Felizmente, o pacote survey calcula corretamente asestimativas e erros padrão de forma apropriada.

Estratificação (outra visão)

I Exemplo, no estudo do índice de desempenho acadêmico.I A variável emer indica a proporção de professores de

emergência (temporários).I Reflete a dificuldade de contratar professores.I 20% das escolas não tem professores temporários, e 20% das

escolas têm mais que 20% de professores temporários.I Vamos calcular as estimativas do índice de desempenho dos

alunos

Amostra aleatória estratificada no survey

# Subpopulação de escolas com mais que 20% de prof. temporáriossrs_designHigh <- subset(strat_design, emer > 20)svytotal(~enroll, srs_designHigh)

## total SE## enroll 762132 128674

# Subpopulação de escolas sem prof. temporáriossrs_designLow <- subset(strat_design, emer==0)svytotal(~enroll, srs_designLow)

## total SE## enroll 461690 75813

Amostra aleatória estratificada no survey

# Subpopulação de escolas com mais que 20% de prof. temporáriossvymean(~api00+api99, srs_designHigh)

## mean SE## api00 558 21.7## api99 524 21.6

# Subpopulação de escolas sem prof. temporáriossvymean(~api00+api99, srs_designLow)

## mean SE## api00 749 17.5## api99 720 19.1

Amostra por conglomerados

I A amostragem por conglomerados consiste em selecionarpessoas em grupos (conglomerados ou clusters)

I Método mais usado quando tem-se entrevistas (praticidade)I Precisão baixa, quando comparada a AASI Diferente da amostragem por estratos onde todos os estratos

devem fazer parte da amostra, os conglomerados podem serselecionados por amostragem.

Amostra por conglomerados em um ou vários estágios

I Na amostragem por conglomerados em um estágio, osconglomerados são sorteados e todas as pessoas daqueleconglomerados são selecionadas.

I Logo, é natural que podemos sortear novos conglomerados, esortear indivíduos, em dois ou vários níveis.

I Ex: Estados, municípios, setores censitários, residências,pessoas.

I O cálculo das probabilidades de seleção seguem uma estruturacondicional.

πi = P(cluster1)P(cluster2|cluster1)P(Indiv .|cluster1, cluster2)

Amostra por conglomerados em um ou vários estágios

I Suponha que um distrito foi selecionado entre 100 outrosI Um residência naquele distrito foi selecionado entre 1000

daquele distrito.I Informações sobre o domicílio foram coletadas

πi =1

1001

1000I O peso, nesse caso, é 100.000.I Com todos os pesos em mãos, podemos aplicar o estimador de

Horvitz-Thompson.

Amostra por conglomerados exemplo

I Para o exemplo do índice de desempenho acadêmico naCalifórnia, as escolas estão divididas em 757 distritos.

I Temos dois cenários:I Amostra por conglomerado em 1 estágio (15 distritos foram

sorteados)I Amostra em dois estágios: 40 distritos sorteados e escolas

sorteadas dentro de cada municípios

Amostra por conglomerados exemplo

# one-stage cluster sampledclus1<-svydesign(id=~dnum, weights=~pw, data=apiclus1, fpc=~fpc)svymean(~api00+api99, dclus1)

## mean SE## api00 644 23.5## api99 607 24.2

svytotal(~enroll, dclus1)

## total SE## enroll 3404940 932235

Amostra por conglomerados exemplo

# two-stage cluster sampledclus2<-svydesign(id=~dnum+snum, fpc=~fpc1+fpc2, data=apiclus2)svymean(~api00+api99, dclus2)

## mean SE## api00 671 30.1## api99 645 29.7

svytotal(~enroll, dclus2, na.rm=TRUE)

## total SE## enroll 2639273 8e+05

Comparando todos os métodos

Esquema amostral API 00 e.p

População 664.71 –

AAS 656.59 9.25

AAE 662.29 9.41

AAC 1 estágio 644.17 23.54

AAC 2 estágios 670.81 30.10

Extra

I Outras funcionalidades do pacote surveyI svyttest() – Teste tI svyglm() – Ajusta modelos lineares generalizadosI svycoxph() – Modelo de risco proporcionais (Cox)I svykm() – Kaplan-Meier

I Métodos bayesianos usando dados complexosI Modelos multinível incorporando o desenhoI Gelman et al. (1995, 2003, 2013); Chambers and Skinner (2003,

chap 4)

Resumindo

I O desenho da amostra deve ser considerado no estudo;I Medidas de incerteza devem ser reportadas;I Existem várias bases de dados onde o desenho amostral é

complexo;I O pacote survey é uma ferramenta poderosa para analisar

dados amostrais complexos

Recommended