Buscar

Tema 03 Amostragem na prática com a utilização do software R

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 61 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 61 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 61 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

DESCRIÇÃO
Utilização do software R na especificação e estimação de planos amostrais por amostragem aleatória simples, sistemática, estratificada e por
conglomerados.
PROPÓSITO
Apresentar o software estatístico e gratuito R na seleção amostral e estimação de diferentes planos amostrais, como a amostragem aleatória
simples, amostragem estratificada, amostragem por conglomerados e amostragem sistemática.
PREPARAÇÃO
Antes de iniciar o conteúdo atual, instale o software estatístico R em seu computador ou dispositivo móvel para realizar aplicações práticas da
teoria da amostragem. Você pode baixar também o RStudio.
OBJETIVOS
MÓDULO 1
Descrever conceitos gerais sobre o software estatístico R e o pacote sampling nas estimações segundo a amostragem aleatória simples
MÓDULO 2
Descrever o pacote survey para estimações a partir da amostragem estratificada
MÓDULO 3
Selecionar amostras a partir da amostragem sistemática e conglomerada com estimações para esses planos no Software R
MÓDULO 1
 Descrever conceitos gerais sobre o software estatístico R e o pacote sampling nas estimações segundo a amostragem aleatória
simples
LIGANDO OS PONTOS
Você conhece a linguagem de programação R? Diante da necessidade de realizar amostragem aleatória, como o R poderia ser útil? Para
respondermos a estas perguntas, vamos analisar algumas situações práticas.
Vamos analisar o caso de uma empresa de vendas de livros online que deseja aumentar a sua oferta de títulos. Por onde a empresa deve
começar a realizar a sua pesquisa? Que tipo de ferramenta ela pode utilizar para analisar os dados?
Nesse caso, o objetivo já está bem definido: aumentar a oferta de títulos de livros para venda. Pelo fato de ser uma empresa que trabalha
com vendas online, a coleta dos dados históricos é facilitada, pois tudo é feito online e, portanto, deveria ficar registrado em um banco de
dados, de modo que seja fácil consultar os dados a qualquer momento. Em seguida, vem o processo de análise. Para executar esse
processo, o conhecimento dos fundamentos teóricos da estatística e probabilidade são essenciais para produzir resultados sustentados em
conexões não triviais e lógicas sendo que a teoria ganha um poderoso aliado para realizar testes sistematizados com a utilização de
ferramentas computacionais, como a linguagem R.
O R é uma linguagem de programação muito popular para aplicações de ciência de dados. E o que torna o R tão especial? São muitos os
fatores que contribuíram para a popularidade dele, como a disponibilidade de muitas funcionalidades em bibliotecas, conjuntos de dados
prontos para serem usados e uma sintaxe simplificada bastante adequada à realização de testes e análises.
Então, uma das formas práticas que a empresa de venda de livros online pode usar o R na prática é para realizar amostragem aleatória. O R
disponibiliza funcionalidades que permitem realizar sorteios sem e com reposição, de modo que possamos fazer testes interessantes para
criação de análises consistentes e viáveis sob os pontos de vista de tempo e confiabilidade.
O contexto de utilização do R ocorre principalmente para ciência de dados que é uma área que ganhou muita relevância nos últimos anos.
Ela, em si, não é uma área nova, mas a disponibilidade de programas que contêm diversas funcionalidades em bibliotecas e a linguagem de
sintaxe objetiva ajudaram a popularizar a aplicação de conceitos para resolver problemas reais.
Outro ponto relevante a respeito do R é que ele possui licença de software livre. Realmente, fazer a instalação do R e de suas bibliotecas é
muito simples. Somado a tudo isso, ainda está o fato de que o R pode se integrar a outras ferramentas de análise, como o Power BI, que é
um software da Microsoft muito útil para produção de relatórios de altíssima qualidade. Então, de fato, empresas como a do nosso exemplo,
podem ter muitos benefícios ao realizar análises com R.
Após a leitura do caso, é hora de aplicar seus conhecimentos! Vamos ligar esses pontos?
3. CONSIDERE O SEGUINTE CENÁRIO: VOCÊ ESTÁ PROCURANDO
OPORTUNIDADES DE TRABALHO NA ÁREA DE CIÊNCIA DE DADOS. VOCÊ SABE
QUE NESSA ÁREA A APRESENTAÇÃO DE UM PORTFÓLIO DE APLICAÇÕES É
MUITO SIGNIFICATIVA PARA DEMONSTRAR A SUA CAPACIDADE DE RESOLVER
PROBLEMAS REAIS. NESSE CONTEXTO, QUAIS SERIAM OS MOTIVOS PARA
VOCÊ INVESTIR NO APRENDIZADO DO R?
RESPOSTA
A capacidade de resolver problemas reais é muito valorizada pelo mercado de trabalho. No caso de ciência
de dados, essa capacidade é medida pelos resultados de análises mediante ferramentas computacionais
como a linguagem de programação R, que ocupa uma posição de destaque. Portanto, investir no
desenvolvimento de soluções usando o R é uma forma de demonstrar para o mercado que somos capazes
de resolver problemas reais aplicando conceitos que têm bases sólidas no conhecimento das áreas de
estatística e probabilidade.
INTRODUÇÃO
javascript:void(0)
Ao se construir uma pesquisa e desenhar uma amostra mais complexa, a análise de dados no papel pode se tornar inviável. Além disso,
programar todas as vezes as mesmas fórmulas desperdiça muito tempo, que poderia ser aplicado em outras etapas do processo. Por isso,
aprenderemos a fazer seleções amostrais e estimações para vários planos amostrais via software estatístico. No caso, aprenderemos como
utilizar o programa R dentro da teoria da amostragem.
Este módulo descreverá como instalar o software R e quais as principais características que fazem dele um programa cada vez mais versátil
e difundido dentro do meio acadêmico e profissional. Utilizaremos uma série de bibliotecas dentro do software para selecionarmos amostras
aleatórias simples e fazermos estimações segundo esse plano amostral.
SOFTWARE R
O R é um software estatístico que atua como alternativa aos programas estatísticos tradicionais, como o SPSS, SAS e Stata, sendo uma
linguagem de código aberto extensível. Ou seja, o software, além de livre, pode ser atualizado pelos próprios usuários. Imagine um software
extremamente robusto, simples de utilizar, avançado e ainda de graça?
É isso que temos no R. Ele não possui versão demo e depois outra versão mais completa paga. Ele é inteiramente gratuito. E cada pessoa
pode simplesmente alimentá-lo com suas próprias programações. Isso é realmente interessante, porque alguém do outro lado do mundo
pode adicionar algo dentro do programa e você simplesmente pode utilizar aquele código também.
Como o interesse na utilização do R veio aumentando nos últimos anos, é bem provável que algo que você precise fazer já possa ter sido
implementado por outra pessoa e esteja disponível de forma gratuita. Além disso, esse ambiente de programação está disponível nas mais
diversas plataformas (Windows, Macintosh, UNIX e Linux).
 VOCÊ SABIA
O software vem sempre passando por atualizações e o usuário pode simplesmente fazer o download da nova versão. Antigamente, existia
apenas o R clássico, original, com uma plataforma mais antiga, porém, nos dias de hoje, você consegue uma interface superamistosa e
simples para utilizá-lo. Na verdade, você primeiro instala o R clássico e depois instala essa interface com diversas melhorias. Sinta-se livre
para escolher a melhor maneira de começar.
O funcionamento do R é feito através de pacotes, também chamados de bibliotecas. Quando você instala o R, ele vem com diversos
packages já instalados em sua memória, o que permite que você já possa utilizar uma série de funções interessantes. Isso é feito para que o
R consiga economizar espaço de memória e não fique tão sobrecarregado. Em outros softwares, quando você clica para abri-los, tudo que
ele pode fazer já é carregado automaticamente, o que muitas vezes deixa aquele ambiente pesado, com muitos travamentos. O R já trabalha
de forma diferente, pois você só instala ou carrega aquilo que realmente vai precisar usar.
 SAIBA MAIS
Para instalar o software R você simplesmente pode baixá-lo em https://cran.r-project.org/.
Na Figura 1, temos a tela de aberturado software R clássico. O número foi adicionado à figura somente para identificar que esse é o único
espaço onde você pode digitar algo no programa. Ali, você digita a programação e os resultados aparecem.
 Figura 1: Tela inicial do software R. Fonte: The Comprehensive R Archive Network.
javascript:void(0);
 SAIBA MAIS
Caso queira instalar a interface um pouco mais amistosa, você pode baixar também o RStudio na página RStudio. Lembre-se de primeiro
instalar o R clássico e depois este. Como o RStudio é uma plataforma mais amigável, usaremos sempre a partir de agora. Além disso, se
qualquer uma das programações abaixo não funcionar ou o software travar, por favor, feche-o e inicialize-o novamente.
 Figura 2: Tela inicial do software RStudio. Fonte: RStudio.
Na Figura 2, temos a tela inicial do RStudio. Perceba como temos muito mais opções do que na Figura 1. Neste caso, temos em 1 o local
onde você pode fazer suas programações, sendo um local de backup. Caso o programa trave e/ou o computador desligue, você perderia
tudo se estivesse usando o R clássico, porém no RStudio isso fica salvo. Esta é uma enorme vantagem do segundo em relação ao primeiro.
Em 2, conseguimos ver facilmente também as bases de dados e variáveis que estão sendo utilizadas no momento. Basta clicar em cima de
alguma base e, rapidamente, você conseguirá ver quantas variáveis ela possui e qual o tipo de cada variável. Automaticamente, ao criar ou
ler um arquivo de dados, ele será adicionado nessa janela.
javascript:void(0);
Em 3, temos a janela de execução dos comandos. Ou seja, essa janela é equivalente ao R clássico. Podemos dizer que o RStudio contém o
R e mais outras 3 janelas. Tudo que você precisará executar será feito nessa parte da tela.
Por fim, temos em 4 uma parte com saídas de resultados gráficos, menu de ajuda, instalação e carregamento das bibliotecas, entre outras
coisas. Assim, se você precisar instalar um pacote, pode vir em 4, clicar em packages e instalar à vontade quantos pacotes quiser. Mas
lembre-se de que instalar um pacote não é suficiente para que ele funcione, é preciso carregá-lo. Toda vez que fechar e abrir o R, ele
mantém apenas os pacotes default (básicos). Os demais precisam ser carregados todas as vezes.
PRIMEIRO ACESSO
Ao abrir o RStudio, você está com o "mundo em suas mãos". Você pode ler um arquivo de dados, construir sua própria base, instalar um
pacote, criar um pacote, carregar um pacote ou simplesmente programar. Você pode fazer uma tabela, um gráfico simples, um gráfico
tridimensional, um esquema, há uma infinidade de opções.
Vamos sempre utilizar o RStudio para fazer nossas análises. Para executar a programação no software, você pode digitá-la na janela
correspondente ao número 2 da Figura 2 e depois apertar o RUN ainda nessa janela. Ou você pode digitar diretamente em 3 e apertar
enter. Vejamos um exemplo de alguns gráficos que o R pode te oferecer. Para isso, vamos utilizar um pacote que já vem instalado e
carregado no R. É o pacote graphics. A partir de agora, todo comando que você deverá digitar no software será escrito em itálico para
diferenciar entre texto e conteúdo. Vamos começar vendo a demonstração de um pacote gráfico em 2 dimensões com o comando demo.
Você pode simplesmente copiar o código e colar diretamente no programa ou então digitar no R:
demo(graphics)
Depois de digitar o comando acima, pressione o comando enter repetidas vezes. Isso mostrará diversos gráficos que o R é capaz de fazer.
Muito Legal, não é mesmo?
 SAIBA MAIS
Esse pacote já estava previamente instalado e carregado no R, logo não precisamos fazer nada além de digitar seu código. Muitas
bibliotecas precisam ser instaladas e carregadas, como veremos nos tópicos abaixo. No momento da instalação, dependendo da versão do
R, pode ser que ele te mostre uma lista de locais onde você poderá baixar esse pacote. Você poderá escolher qualquer local da lista, mas é
sempre indicado baixar em cidades listadas no Brasil. Esse procedimento torna o download mais rápido.
Como mencionado anteriormente, dentro do R há uma infinidade de pacotes que podem ser utilizados. Para realizarmos nossa amostragem,
usaremos as funções pré-carregadas no R e basicamente dois pacotes: Sampling e o Survey.
FUNÇÃO SAMPLE
Uma das funções muito utilizadas para selecionar amostras no R é a sample(). Essa função já está pré-carregada na memória do R, assim
não precisaremos instalar nenhum pacote para sua execução. Para fazer isso, basta utilizar sample() que recebe um vetor como entrada e
então você diz quantas amostras tirar dessa lista.
Digamos que você queira simular jogadas de um dado comum de seis faces e deseje obter dez resultados. Como o resultado para uma
jogada do dado é um número entre um e seis, nosso código seria:
sample(1:6, 10, replace=TRUE)
Ou seja, estamos utilizando a função sample() com três parâmetros. O primeiro se refere ao intervalo de valores utilizados (o dado varia de 1
a 6), o segundo diz o tamanho de amostra que se deseja (nesse caso, o número de repetições) e o replace diz se aquela retirada é com ou
sem reposição. Dessa forma, você diz para a função sample retornar 10 valores, mas todos eles dentro do intervalo de 1 a 6. Assim, estamos
fazendo uma seleção pelo método de amostragem aleatória simples com reposição.
Você pode utilizar a sample() para fazer amostragem aleatória simples sem reposição também. Nesse caso, basta substituir o TRUE por
FALSE no replace ou simplesmente deixar em branco essa parte, pois o default da função é sem reposição. Imagine que você tenha feito
uma compra numa loja e recebido um cupom numerado. A loja vai realizar o sorteio de duas televisões. Provavelmente farão sem reposição,
para que uma mesma pessoa não possa ganhar duas vezes. Sabendo o total de cupons utilizados, basta colocar no sample() e obter o
resultado. O levantamento da loja avaliou que foram disponibilizados 9780 cupons. Assim, poderemos fazer:
sample(1:9780, 2, replace=FALSE)
ou simplesmente
sample(1:9780, 2)
Se você rodou as duas formas acima, deve ter percebido que os resultados foram diferentes. Como o valor do retorno da função sample() é
um número determinado aleatoriamente, se você rodar esse código várias vezes, obterá resultados diferentes a cada vez. Esse é o
comportamento correto na maioria dos casos, mas, às vezes, você pode desejar obter resultados repetíveis sempre que executar a função.
 COMENTÁRIO
Normalmente, isso ocorrerá apenas quando você desejar desenvolver e testar seu código, ou se quiser que outra pessoa consiga replicar
seus resultados e obter exatamente os mesmos valores. Nesse caso, é comum especificar um valor de referência inicial, denominado
semente.
Se você fornecer um valor de semente, a sequência de números aleatórios será redefinida para um estado conhecido. Isso ocorre porque o R
não cria números verdadeiramente aleatórios, mas apenas números pseudoaleatórios. Uma sequência pseudoaleatória é um conjunto de
números que, para todos os efeitos práticos, parecem ser aleatórios, mas foram gerados por um algoritmo. Quando você define uma semente
inicial para um processo pseudoaleatório, o R sempre retorna a mesma sequência pseudoaleatória.
No R você usa a função set.seed() para especificar o valor inicial da semente. O argumento para set.seed() é qualquer valor inteiro. Vamos
utilizar uma semente igual, assim conseguiremos os mesmos resultados sempre.
set.seed(5)
sample(1:9780, 2, replace=FALSE)
ou simplesmente
set.seed(5)
sample(1:9780, 2)
O resultado da sua programação deve ter fornecido os ganhadores das duas televisões como os cupons de número 2255 e 6859, correto?
Lembre-se de que estamos utilizando o RStudio. Se você rodar no R clássico, o resultado pode ser diferente.
PACOTE SAMPLING
O pacote chamado sampling é outra forma de selecionar amostras, principalmente se utilizarmos planos amostrais mais complexos. Ele
contém muitas funções e opções internas, mas seu grande objetivo é selecionar amostrasutilizando métodos probabilísticos. Obter amostras
no R é muito fácil, porque o software trata essas seleções simplesmente como um novo subconjunto de dados.
Vamos também selecionar amostras aleatórias simples com e sem reposição por meio de desse pacote. Vamos instalar e carregar o pacote
por:
install.packages("sampling")
library(sampling)
No método com reposição temos que usar a função srswr(n,N). Basta definirmos o tamanho da amostra n e o tamanho populacional N. A
função retorna um vetor com o número de vezes que a unidade caiu na amostra. Primeiro, carregamos o pacote sampling e depois
javascript:void(0)
utilizamos suas funções. Como exemplo, vamos selecionar uma amostra de tamanho 20 de uma população de tamanho 100. Sempre
usaremos uma semente para nossos resultados ficarem alinhados. Assim, temos:
SRSWR(N,N)
Do inglês, srswr é a abreviação de sample random sampling with replacement. Traduzindo isso temos “amostra aleatória simples com
reposição”.
set.seed(9)
s=srswr(20,100)
s
Após rodar os comandos acima, teremos os seguintes resultados:
[1] 0 0 0 0 0 0 0 0 0 2 0 0 1 0 0 0 0 1 0 0 1 0 0 0 0 1 0 0 1 1 0 1 0 1 0 1 0 1 0 0 1 0
[43] 0 0 0 0 0 0 0 1 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0
[85] 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0
Este resultado, que pela semente é igual para todos, diz quais as unidades da população de 1 a 100 foram selecionadas. Os valores iguais a
1 foram os elementos selecionados uma única vez, e, como é com reposição, os valores iguais a 2 significam que aquela unidade foi
selecionada duas vezes.
Para vermos as unidades, podemos simplesmente fazer:
(1:100)[s!=0]
As unidades selecionadas foram:
[1] 10 13 18 21 26 29 30 32 34 36 38 41 50 51 78 89 94
E para vermos quem foi selecionado duas vezes, podemos utilizar o seguinte comando:
(1:100)[s==2]
Tivemos três unidades selecionadas mais de uma vez:
[1] 10 51 78
Para a amostragem aleatória simples sem reposição, utilizaremos a função srswor(n,N). É uma abreviação para sample random sampling
withOut replacement, ou seja, “amostra aleatória simples sem reposição”. Assim, faremos a mesma coisa que fizemos no caso anterior:
set.seed(10)
s=srswor(20,100)
(1:100)[s!=0]
Os resultados encontrados foram:
[1] 7 8 9 13 15 24 27 34 39 42 54 55 71 72 74 76 83 88 91 99
ESTIMAÇÃO POR AMOSTRAGEM ALEATÓRIA SIMPLES
Utilizaremos o software R para a estimação dos dados aplicando a amostragem aleatória simples. É muito importante que você faça uma
revisão das expressões utilizadas para estimação da média, total e variância para a AAS.
O R já possui uma série de bases de dados internamente carregadas em sua memória. Outras bases são adicionadas no momento de se
carregar um pacote. Faça o seguinte comando para ver todas as bases disponíveis:
data()
Utilizaremos uma base referente ao pacote sampling chamada de MU284. Essa base de dados é uma base real datada de 1.992. São dados
sobre 284 municípios da Suécia. Diversas informações são levantadas, mas vamos nos ater à informação de P85. Essa variável diz a
quantidade de população (em mil unidades) de cada um dos 284 municípios. Para carregar a base e ver as variáveis, fazemos:
data(MU284)
fix(MU284)
Observe que o comando fix abre outra janela para que você possa visualizar a base. Mas lembre-se de fechar a janela aberta antes de
prosseguir. Se você não fechar, o R não irá executar os próximos comandos. Nossa população é composta por N = 284 municípios, você
pode observar isso ao visualizar a quantidade de linhas do arquivo com:
N = nrow(MU284)
N
Vamos agora selecionar uma AAS sem reposição composta por 80 municípios com a função sample. Usaremos também uma semente para
obtermos os mesmos resultados:
n = 80
set.seed(8)
selec = sample(1:N, n)
amostra = MU284[selec,]
amostra
Vamos fazer estimações de totais, médias, variâncias para essa AAS. Faremos na "mão" a programação para cada uma das estimações a
seguir.
ESTIMAÇÃO DE VARIÁVEIS POPULACIONAIS
Estimação da média populacional
sum(amostra$P85)/n
A partir dessa amostra de 80 municípios, temos que a estimativa da média populacional para todos os municípios foi de aproximadamente
28.688 pessoas (lembrando que os dados estão em milhares)
Estimação da variância da estimativa da média populacional
(1-n/N)*var(amostra$P85)/n
A estimativa da variância da estimativa da média é de 6.26 pessoas².
Erro padrão da estimativa da média populacional
sqrt((1-n/N)*var(amostra$P85)/n)
Após tirar a raiz quadrada com a função sqrt, temos o erro padrão da estimativa da média em cerca de 2.503 pessoas. Assim, o erro da
estimativa da média foi de cerca de 2.503 indivíduos (lembre-se sempre da unidade em milhares ao dar o resultado final).
Estimação do total populacional
N*sum(amostra$P85)/n
Temos então que a estimativa do total populacional de todos os municípios é de aproximadamente 8147.25, ou seja, 8.147.250 pessoas em
todos esses municípios.
Estimação da variância da estimativa do total populacional
N^2*(1/n-1/N)*var(amostra$P85)
A estimativa da variância da estimativa do total populacional é de 505.685,8 pessoas.
Erro padrão da estimação do total populacional
sqrt(N^2*(1/n-1/N)*var(amostra$P85))
Após tirar a raiz quadrada, temos o erro padrão da estimativa do total em aproximadamente 711.1159 pessoas. Assim, o erro da estimativa do
total foi de cerca de 711.115 indivíduos (lembre-se sempre da unidade em milhares ao dar o resultado final).
Você pode estar se perguntando: Toda vez que eu precisar estimar alguma coisa eu preciso programar? É uma pergunta válida. A resposta é:
Depende. Se você precisar utilizar algo muito específico, pode ser que sim. Ou pode ser que tenha que procurar na internet sobre algum
pacote que faça isso no R. Mas costumamos dizer que não é que não exista aquela programação, você que não achou ainda.
Para nossa sorte, existe um pacote chamado survey que faz todas essas estimações sem que precisemos lembrar das fórmulas de
estimadores de média ou variância, por exemplo. Precisamos apenas especificar os parâmetros do plano amostral e teremos nossas
estimações. Para esse exemplo que fizemos juntos, faremos:
install.packages("survey")
library(survey)
amostra$N = N
AAS = svydesign(id = ~0, data = amostra, fpc = ~N)
AAS
O parâmetro id serve para dizer se há algum tipo de cluster nos dados, como não temos, deixamos como 0 ou 1, depois entramos com nossa
amostra e com o fator fpc. Esse fator é chamado de fator de correção para população finita. Nada mais é que o total da população, no caso
da AAS. Por isso, antes de fazer o svydesign, adicionamos uma nova coluna com o total populacional. Para fazer as estimações usando o
pacote survey, faremos:
Estimação da média populacional (svymean)
svymean(~P85, AAS)
Estimação do total populacional (svytotal)
svytotal(~P85, AAS)
Compare os resultados obtidos pelo survey com os resultados de onde havíamos feito a programação. Veja como chegamos aos mesmos
resultados. Dessa forma, não precisamos fazer nenhum tipo de programação, basta entrarmos com a base de dados, dizermos qual plano
amostral gostaríamos de adotar e o pacote se encarrega do restante.
O SOFTWARE R E SEUS PACOTES NA SELEÇÃO E ESTIMAÇÃO
SOB AAS
VERIFICANDO O APRENDIZADO
MÓDULO 2
 Descrever o pacote survey para estimações a partir da amostragem estratificada
LIGANDO OS PONTOS
Você conhece o pacote survey do R? Como poderíamos utilizá-lo para fazer estimativas a partir de uma amostragem estratificada? Para
respondermos a estas perguntas, vamos analisar algumas situações práticas.
Constantemente, deparamo-nos com a necessidade de conhecer mais sobre características, comportamentos e intenções de grupos da
sociedade. Esse conhecimento nos ajuda a traçar estratégias para lançamento de produtos e serviços. No caso dos governos, é um
importante apoio para gerenciar recursos limitados com maior efetividade. Vamos pensar em um exemplo prático: a prefeitura de um
munícipio de médio porte pretende obter melhores resultadosna qualidade de ensino fundamental. Existem sete indicadores da Unicef que
podem ser utilizados para medir essa qualidade que são: (1) planejamento institucional, (2) multiplicidade de experiências e linguagens, (3)
interações, (4) promoção de saúde, (5) espaços, materiais e mobiliários, (6) formação e condições de trabalho dos (as) professores (as) e
demais profissionais e (7) cooperação e troca com as famílias e participação na rede de proteção social.
Imediatamente, percebemos que há muitas questões a serem observadas e que tratá-las é um grande desafio. Então, é fundamental que
todas as decisões sejam extremamente eficientes. E aqui, a palavra extremamente representa a necessidade de alocação de pessoas,
gerenciamento de recursos escassos e produção de resultados em um tempo viável. Por isso, é fundamental a aplicação de uma
metodologia de pesquisa científica para atingir esses objetivos de eficiência. Dependendo da dimensão do que estamos analisando, não é
possível entrevistar todas as pessoas de uma população. Então, utilizamos dos métodos de amostragem que nos auxiliam na etapa de coleta
de dados. Em seguida, precisamos analisar esses dados e verificar o quão representativos eles são da população. Nesse momento, é
fundamental o uso de ferramentas computacionais que possuam recursos com funções e outras facilidades para estudarmos esses dados,
como o software R e, mais especificamente, o pacote Survey.
O Survey é um pacote de pesquisa que tem dois objetivos principais. São eles:
relacionar os metadados de uma pesquisa aos dados, de modo que possamos fazer análises de forma confiável e automática, ou seja,
permite a criação de objetos contendo um data frame e informações do projeto.
fornecer estimativas de variância válidas para estatísticas computadas nesses objetos, o que permite gerar as estimações média e total
amostrais.
Ao mesmo tempo em que é necessário esforço para dominar os conceitos e desenvolver habilidade para programar no R, também é bem
compensador realizar uma análise de muita qualidade e com altíssimo valor agregado. No caso da prefeitura do nosso exemplo, as chances
de obter resultados mais fidedignos do que realmente acontece com a sua população vai direcionar esforços para a utilização eficiente de
recursos humanos e financeiros para melhorar a qualidade do ensino fundamental.
Após a leitura do caso, é hora de aplicar seus conhecimentos! Vamos ligar esses pontos?
3. CONSIDERE O SEGUINTE CENÁRIO: VOCÊ É O RESPONSÁVEL POR TREINAR
UM GRUPO DE ANALISTAS NO SOFTWARE R. O OBJETIVO É CAPACITÁ-LOS
PARA REALIZAR ANÁLISE DE DADOS SOB MÉTODOS DE AMOSTRAGEM. NESSE
CENÁRIO, QUAL SERIA SUA ESTRATÉGIA PARA POTENCIALIZAR O
APRENDIZADO DA SUA TURMA DE ALUNOS?
RESPOSTA
O R é uma das linguagens de programação mais importantes para aplicações de estatística e probabilidade.
No entanto, é verdade que a sintaxe da linguagem exige bastante atenção. Além disso, o R não substitui o
analista, ele apenas potencializa os resultados do trabalho. Portanto, a melhor forma de aprender a
programar com R é estudá-lo com exemplos de aplicações de estatística e probabilidade. O alinhamento
entre conceitos e prática ajudará bastante no aprendizado da turma. Em especial, é importante focar na
sintaxe do R, no uso da estrutura de dados dataframe e nas funções do pacote Survey.
INTRODUÇÃO
No módulo anterior, vimos as principais características na utilização do software R, principalmente relacionado à amostragem. Vimos que o
software é construído a partir de pacotes, os quais cada pessoa pode criar o seu próprio e compartilhar com os demais usuários da
comunidade.
javascript:void(0)
A partir deste módulo, vamos explorar um pouco mais sobre o pacote Survey para fazer a estimação dos dados. Além disso, veremos como
realizar uma amostragem estratificada no software R e como fazer corretamente alguns tipos de alocação da amostra existente.
PACOTE SURVEY
Vimos rapidamente no módulo anterior a utilização do pacote Survey para fazer estimações das nossas variáveis de interesse. Veremos
agora maiores detalhes sobre a utilização deste pacote.
 SAIBA MAIS
O Survey foi criado em 2004 por Thomas Lumley, da Universidade de Auckland, na Nova Zelândia. Ele contém uma série de funções
internas com muitos parâmetros disponíveis e permite analisar dados sob amostragem complexa.
Para usar o pacote, são necessários alguns passos:
ETAPA 1
ETAPA 2
ETAPA 3
ETAPA 1
O primeiro é selecionar a amostra a ser utilizada, a qual pode ser feita com o pacote sampling.
ETAPA 2
Em seguida, é preciso especificar o plano amostral utilizado, através da função svydesign().
ETAPA 3
Com o desenho amostral construído, podemos utilizar as funções do survey para fazer as estimações considerando esse plano. Todas essas
funções especiais começam com svy, por exemplo, a svymean() e a svytotal().
No caso da amostragem estratificada (AE), a primeira coisa que faremos é verificar se há na base alguma variável referente ao estrato.
Lembre-se de que na AE todos os estratos deverão ter amostras selecionadas. Para fazer a seleção, utilizaremos novamente o pacote
sampling. A ideia será sempre utilizar as funções da biblioteca sampling para selecionar as amostras e a biblioteca survey para fazer as
estimações. Alguns parâmetros da função são:
svydesign(id=~, strata=~ , data= , weights = , fpc= , method= )
Vamos entender cada um desses parâmetros da função svydesign do package survey:
ID
Indica se as unidades amostradas são agrupadas em cluster. Como a amostragem por conglomerados não foi
usada aqui, só temos que colocar ~ 1 ou ~ 0 como marcador de posição.
STRATA Argumento para dizer qual a variável utilizada para fazer a estratificação.
DATA Parâmetro referente ao nome da base de dados da amostra.
WEIGHTS
Indica o peso amostral daquela unidade. Nesse caso, será influenciando pelo fator do tamanho do estrato h
pelo tamanho da população . Se não quiser usar o peso, pode usar a probabilidade de seleção
também, pois o peso e a probabilidade de seleção são grandezas inversas.
(wh = )nh
Nh
 Atenção! Para visualizaçãocompleta da tabela utilize a rolagem horizontal
Pense no seguinte exemplo: Você vai selecionar 4 empresas em um total de 1000 para análise. Qual a probabilidade de seleção dessas
empresas? Simplesmente fazemos . Assim, cada empresa tem uma chance de 0,4% em ser selecionada. Agora, pense
na seguinte pergunta: Quantas empresas cada uma dessas 4 vai ter que representar?
ETAPA 1
ETAPA 2
ETAPA 3
ETAPA 1
Ao selecionar 4 de 1000, essas 4 empresas selecionadas têm que responder por elas e pelas outras empresas que não foram selecionadas.
Esta é a ideia do peso, dar maior representatividade a quem foi selecionado, já que nem todos serão.
ETAPA 2
Assim, fazendo , ou seja, a informação de cada empresa vai ter um peso de 250, porque ela precisa representar as outras
que não foram selecionadas. Nesse exemplo, o peso amostral de cada uma dessas unidades vale 250. Se você reparar bem, há uma relação
entre o valor 0,004 da probabilidade de seleção e o valor 250 dos pesos.
P = = 0, 0044
1000
w = = 2501000
4
ETAPA 3
Um é o inverso do outro: Se multiplicarmos 250*0,004, o resultado vai ser igual a 1. Portanto, se tivermos a probabilidade de seleção, basta
fazer 1 dividido por ela e encontraremos o peso. Obtendo uma das duas grandezas, você automaticamente consegue a outra.
Para a função svydesign, você pode optar por informar tanto a probabilidade quanto o peso. Caso prefira deixar em branco, o software vai
entender que está fazendo uma seleção estratificada com ponderação igual entre os estratos.
fpc ‒ Argumento utilizado para fazer uma correção devido a população ser finita (finite population correction). É um vetor adicionado à base
da amostra em que, para cada registro, será adicionado o total da população. Se estamos fazendo uma amostra estratificada, o fpc vai ser o
total populacional de cada um dos estratos. A importância da sua utilização é que, sabendo o valor totalda população, é possível reduzir a
variância quando uma fração substancial da população total for amostrada na estimação dos dados.
Após criado o objeto do plano amostral, podemos simplesmente utilizar o svymean e o svytotal para fazer as estimações de média e total
com suas respectivas medidas de erro padrão.
BASE DE DADOS MU284
Para construirmos nosso plano amostral estratificado e depois fazermos estimações a partir dessa amostra, usaremos novamente a base
MU284. Como nosso plano agora é mais complexo, pois envolve a estratificação, vamos dar mais detalhes sobre os dados.
A base contém então 11 variáveis diferentes descritas para 284 municípios na Suécia. As variáveis são:
id CS82 REV84
javascript:void(0)
javascript:void(0)
javascript:void(0)
P85 SS82 REG
P75 S82 CL
RMT85 ME84
ID
Identificador de cada município, com valores entre 1 a 284.
P85
População de 1985 (em milhares).
P75
População de 1975 (em milhares).
javascript:void(0)
javascript:void(0)
javascript:void(0)
javascript:void(0)
javascript:void(0)
javascript:void(0)
javascript:void(0)
javascript:void(0)
RMT85
Receitas da tributação municipal de 1985 (em milhões de coroas suecas).
CS82
Número de políticos conservadores no conselho municipal.
SS82
Número de políticos sociais-democratas no conselho municipal.
S82
Número total de políticos no conselho municipal.
ME84
Número de funcionários municipais em 1984.
REV84
Valores imobiliários de acordo com a avaliação de 1984 (em milhões de coroas suecas).
REG
Indicador de região geográfica.
CL
Indicador de cluster (um cluster consiste em um conjunto de municípios vizinhos).
Para fazermos nossa amostragem estratificada com essa base, usaremos a variável REG, que é o indicador da região geográfica como
variável de estratificação.
AMOSTRAGEM ESTRATIFICADA NO R
Selecionemos uma amostra estratificada simples sem reposição de tamanho 80 com alocação proporcional ao tamanho dos estratos. Vamos
entender por partes cada etapa desse plano amostral. Primeiro, investigaremos na população quantos estratos existem.
Feito isso, faremos de forma proporcional ao tamanho de cada estrato a alocação da amostra, assim estratos maiores receberão maiores
amostras do que estratos menores. Desse modo, indicaremos a quantidade de unidades que serão selecionadas em cada um dos estratos
por meio da AAS sem reposição. Por último, depois que a estratificação for realizada, poderemos criar nosso objeto do plano amostral e fazer
nossas estimativas.
O primeiro passo para fazermos uma AE é verificarmos a quantidade de estratos que temos no nosso cadastro, ou seja, na nossa população.
Lembre-se de que é preciso que o cadastro seja criticado na busca por erros e possíveis inconsistências e, além disso, que esteja sempre
atualizado. Primeiramente, precisamos ler nossos dados e descobrir quantas regiões temos na base, ou seja, quantos estratos iremos criar.
Faremos a utilização novamente da base MU284 da seguinte forma:
library(sampling)
data(MU284)
table(MU284$REG)
O resultado encontrado após rodar os códigos acima foi:
 Figura 3: Tabela com a quantidade de municípios em cada região gerada no software R.
Pelo resultado obtido na figura 3, temos 8 regiões possíveis para fazermos a estratificação. Além disso, temos o total de cada região, por
exemplo, 25 municípios na região 1,28 municípios na região 2, e assim, sucessivamente.
Para encontrarmos o fator de ponderação dos estratos , faremos , ou seja, a proporção de cada região em relação ao total.
Por meio do R, fazemos:
prop.table(table(MU284$REG))
Logo, temos o peso de cada estrato em relação ao total:
 Figura 4: Peso de cada estrato gerado no software R
Se você somar todos os valores acima, vai encontrar o valor 1, pois o total tem que dar 100%. Como usaremos a alocação proporcional, a
distribuição mantém a fração da amostragem em cada estrato h igual à fração populacional. Ou seja, nesse tipo de alocação, a amostra
previamente definida de tamanho n é distribuída proporcionalmente ao tamanho dos estratos. A alocação é dada por e no R
faremos simplesmente:
 Figura 5: Alocação proporcional em cada estrato gerada no software R.
A partir dessas informações, poderemos calcular o tamanho da amostra em cada estrato. É importante sempre arredondar o tamanho da
amostral para o inteiro superior mais próximo.
Wh Wh =
Nh
N
nh = n
Nh
N
 ATENÇÃO
Dessa forma, você conseguirá obter o mínimo exigido por estrato, porém, pode acontecer do tamanho amostral final ser ligeiramente maior
do que o planejado previamente. Com isso, o tamanho de amostra em cada estrato será de 8, 14, 10, 11, 16, 12, 5 e 9 e o tamanho passa
então de 80 para 85 unidades.
Para selecionarmos nossa amostra estratificada, usaremos a função strata, que também faz parte do pacote sampling, da seguinte forma:
set.seed(3)
selec = strata(MU284, stratanames = "REG", size = c(8,14,10,11,16,12,5,9), method = "srswor")
selec
Com a utilização da semente, encontraremos as mesmas unidades selecionadas. Ao rodar o comando selec, você verá impresso na tela a
amostra selecionada. Vamos usar um comando para ver somente as primeiras 10 unidades da amostra. Você pode substituir o 10 abaixo por
qualquer valor:
head(selec,10)
O resultado encontrado foi:
 Figura 6: As 10 primeiras unidades selecionadas pela amostragem estratificada no R.
Perceba pela figura acima que temos 4 colunas, a de região REG; a Id_unit, que identifica a unidade que foi selecionada; a variável Prob,
que é a probabilidade de seleção; e a stratum, que é igual a REG, porém criada pela própria função.
Vamos entender como foram obtidas as probabilidades de seleção para esses dois estratos. Para o 1°, temos um total de 25 empresas no
estrato e como queremos selecionar apenas 8, basta fazermos . Para o estrato 2, temos , e assim,
sucessivamente, para os outros.
Para filtrar somente alguma variável de um arquivo, utilizamos o símbolo $ separando o nome da base e o nome da variável. Podemos,
então, obter somente as probabilidades de seleção da seguinte forma:
selec$Prob
Já temos as unidades selecionadas, precisamos agora utilizar o banco de dados original para criar um novo objeto com todas as variáveis
para aquelas unidades amostrais. Assim, faremos:
amostra = getdata(MU284, selec)
head(amostra,8)
A função getdata vai completar os dados amostrais com as informações da população MU284. A base chamada amostra vai conter todas as
informações possíveis somente para as unidades selecionadas.
Com nossa amostra bem estabelecida, poderemos construir nosso plano amostral e depois realizar a estimação dos dados. Vamos criar um
vetor de fpc com os totais populacionais. Por exemplo, os 8 primeiros registros são do estrato 1 que tem 25 unidades na população, então
temos que repetir o 25 nas 8 primeiras linhas, e assim, sucessivamente, para os demais estratos. Nosso vetor será feito com o comando de
repetição rep abaixo:
fpc=rep(c(25,48,32,38,56,41,15,29),c(8,14,10,11,16,12,5,9))
fpc
Para especificarmos o plano amostral, usaremos o comando svydesign, em que diremos a variável de estratificação, as probabilidades de
seleção e o fpc. Assim:
P1 = = 0, 32
8
25
P2 = = 0, 2916667
14
48
library(survey)
plano_est = svydesign(id = ~1, strata = ~Stratum, probs = ~selec$Prob, data = amostra, fpc=~fpc)
Com o plano amostral especificado, podemos utilizar a função svymean para fazer nossas estimativas, assim:
Estimativa da média e de seu erro padrão para a variável P85 considerando o plano amostral estratificado
svymean(~P85, plano_est)
Com o resultado acima, nossa estimação da média populacional é de 20.068 pessoas e seu erro padrão, aproximadamente, 1.271 pessoas
(lembre-se de que os dados estão em milhares).
Estimativa do total e de seu erro padrão para a variável P85 considerando o plano amostral estratificado
svytotal(~P85, plano_est)
Para a estimação do total populacional, obtemos aproximadamente 5.700.000 pessoas com um erro padrão de, aproximadamente, 361.100
pessoas.Dessa forma, conseguimos obter estimativas para a média e total populacional da nossa variável P85. Você pode repetir todo o processo
para outra variável do banco e comparar os resultados.
OUTRA FORMA DE OBTER OS MESMOS RESULTADOS
Fizemos a estimação das nossas quantidades de interesse utilizando nosso plano amostral criado com a função svydesign. Um dos
parâmetros informados foi a probabilidade de seleção. Podemos obter os mesmos resultados indicando na função quais são os pesos
amostrais em vez das probabilidades de seleção. Como vimos que as probabilidades e os pesos são grandezas inversas, podemos usar isso
no software e indicar o vetor de pesos no momento da criação do desenho amostral. Para isso, basta adicionar uma coluna na nossa base de
amostra com os valores dos pesos da seguinte forma:
amostra$PESO = 1/amostra$Prob
O que estamos fazendo é acessando a base amostra e adicionando uma nova coluna chamada PESO, com valores de 1 dividido pelas
respectivas probabilidades de seleção de cada linha. Agora, faremos a especificação do plano amostral novamente. Vamos chamar de
plano_est2 e depois poderemos estimar novamente nossas médias e variâncias.
plano_est2 = svydesign(id = ~1, strata = ~Stratum, weights = ~PESO, data = amostra, fpc=~fpc)
Repare no código acima que o parâmetro das probabilidades de seleção foi substituído pelo parâmetro do peso. Fazendo as estimações para
este segundo plano, temos:
svymean(~P85, plano_est2)
svytotal(~P85, plano_est2)
Compare os resultados, perceba que encontramos os mesmos valores. Assim, podemos indicar para a função tanto as probabilidades de
seleção, quanto os pesos amostrais. E caso não indiquemos nada, estamos assumindo que os estratos têm o mesmo tamanho.
RESULTADOS SEM O FPC
Vamos agora fazer nossas estimativas ignorando o fator de correção de população finita. Esse fator é importante, pois indica qual o tamanho
da população de cada estrato. Assim, o software não precisa assumir que a população é infinita e, com isso, os erros de estimação
diminuem.
Nesse caso, basta eliminar o parâmetro e fazer novamente as estimações, vamos chamar esse desenho de plano_est3. Assim, temos:
plano_est3 = svydesign(id = ~1, strata = ~Stratum, probs = ~selec$Prob, data = amostra)
Ou utilizando os pesos em vez das probabilidades de seleção:
plano_est3 = svydesign(id = ~1, strata = ~Stratum, weights = ~PESO, data = amostra)
As estimações são feitas por:
svymean(~P85, plano_est3)
svytotal(~P85, plano_est3)
A tabela abaixo faz a comparação entre as estimações do plano 1 ou 2 com o fator fpc e do plano 3 sem o fator.
Estimativa\ Plano amostral Plano 1 ou 2 (com FPC) Plano 3 (sem FPC)
Média (milhar) 20.068 20.068
Erro padrão da média (milhar) 1.2715 1.5237
Total (milhar) 5699.4 5699.4
Erro padrão do total (milhar) 361.1 432.73
 Atenção! Para visualizaçãocompleta da tabela utilize a rolagem horizontal
Tabela 1: Comparação dos resultados dos planos amostrais com e sem o fator FPC. Fonte: O Autor.
Observe que interessantes os resultados da Tabela 1, pois ao comparar os mesmos planos amostrais, com as mesmas amostras, a utilização
do fpc faz com que seja possível diminuir o erro da estimação. Estamos sempre na busca das melhores estimações com os menores erros
possíveis. Ao comparar as estimativas de média ou de total, os resultados foram exatamente os mesmos, porém o erro padrão das medidas
com o fpc diminuiu. Portanto, sempre que você tiver essa informação, utilize nas especificações do seu plano amostral.
ESTIMAÇÃO POR ESTRATO
Uma das grandes vantagens de se utilizar a AE é a possibilidade de fazer estimações gerais e particulares por estrato. Dessa forma,
podemos acompanhar uma média ou um total específico para alguma região, como é o caso do nosso exemplo. Para isso, usaremos a
função svyby e especificaremos dentro do parâmetro FUN o svymean, para estimarmos a média ou o svytotal, para estimarmos o total.
Usaremos os seguintes comandos:
svyby(~P85, by = ~Stratum, design = plano_est, FUN = svymean)
E o resultado apresentado pelo R para a média foi de:
svyby(~P85, by = ~Stratum, design = plano_est, FUN = svytotal)
E o resultado apresentado pelo R para o total foi de:
É interessante essa estimação por estrato, pois podemos ver que no estrato 1 a estimação do total e da média populacional são muito
maiores que dos outros. Também é possível a partir das estimativas das médias e totais encontrarmos os valores de forma geral. Para o total,
basta somarmos, por exemplo, para cada estrato. Assim, temos,
. E esse
valor foi exatamente o valor encontrado quando fizemos a estimação do total geral.
YAE = 1. 128, 1250 + 939, 4286 + 604, 8000 + 663, 2727 + 997, 5000 + 536, 4167 + 411, 0000 + 418, 8889 = 5. 699, 4
SELEÇÃO AMOSTRAL E ESTIMAÇÃO SOB AMOSTRAGEM
ESTRATIFICADA NO R
VERIFICANDO O APRENDIZADO
MÓDULO 3
 Selecionar amostras a partir da amostragem sistemática e conglomerada com estimações para esses planos no software R
LIGANDO OS PONTOS
Existem diversas técnicas para realizar uma amostragem. Todas têm vantagens e desvantagens. Os critérios que utilizamos para selecionar
uma técnica no lugar de outra leva em consideração informações que temos a respeito dos dados.
Independentemente do método que vamos escolher, o uso de programas como o R e de pacotes especializados como o Survey nos ajuda a
realizar testes, análises e visualizações de forma muito eficaz.
Nesse contexto, estão as amostragens sistemática e conglomerada. Você as conhece? O que você faria diante da necessidade de fazer
estimativas para esse tipo de amostragem usando o R?
Vamos entender esses conceitos na prática.
A necessidade de reconhecer padrões em uma população faz com que entidades dos setores público e privado invistam na realização de
pesquisas. Devido às limitações de recursos de tempo e financeiros, a realização de uma pesquisa é feita por um processo de amostragem.
Quando definimos o tipo de amostragem que vamos utilizar, estamos definindo o plano amostral. Há dois tipos possíveis de planos amostrais:
probabilísticos e não probabilísticos. Sempre que possível, é melhor utilizar o primeiro do que o segundo, pois ele nos fornece informações
mais precisas.
Agora, mais especificamente sobre o método de amostragem, há muitas opções. Vamos focar apenas em algumas delas: aleatória simples,
aleatória sistemática, estratificada e por conglomerados.
Na amostragem aleatória simples, escolhemos elementos da população com chances iguais de serem selecionados.
Na amostragem aleatória sistemática, selecionamos elementos da população a partir da definição de um critério. Por exemplo, fornecemos
uma identificação para cada elemento da população e vamos sortear apenas os elementos cujos identificadores sejam números ímpares.
Já na amostragem estratificada, dividimos os elementos de uma população por suas semelhanças, o que é conhecido como estrato. Em
seguida, realizamos sorteios nesses estratos, e, a partir disso, obtemos a amostra.
Na amostragem por conglomerados, os elementos da população já estão naturalmente agrupados. Um exemplo disso são as pessoas que
residem no mesmo bairro, ou seja, na mesma conglomeração. Ainda assim, pessoas do mesmo grupo têm características heterogêneas.
Então, a ideia é sortear elementos dos conglomerados para formar a amostra.
O R nos fornece funções que permitem realizar esses tipos de amostragens e muitas outras. Mas, novamente, cabe enfatizarmos que o
software é apenas uma ferramenta para potencializar os resultados de nosso trabalho. Portanto, é muito importante investirmos tempo para o
aprendizado dos conceitos da estatística e da probabilidade.
Após a leitura do caso, é hora de aplicar seus conhecimentos! Vamos ligar esses pontos?
3. NO TEXTO, É ENFATIZADA A IMPORTÂNCIA DO CONHECIMENTO TEÓRICO. EM
ESPECIAL, COM A POPULARIZAÇÃO DA CIÊNCIA DE DADOS, O USO DE
FERRAMENTAS COMPUTACIONAIS SE INTENSIFICOU MUITO. COM BASE EM
SUA EXPERIÊNCIA, QUAIS AS VANTAGENS DE ALIAR CONHECIMENTO TEÓRICO
E PRÁTICO?A POPULARIDADE DA CIÊNCIA DE DADOS É UMA TENDÊNCIA
PASSAGEIRA?
RESPOSTA
Analisar dados é algo muito sério. Uma análise malfeita pode causar enormes prejuízos financeiros, além de
outras questões como prejuízos à saúde, ao meio ambiente e à imagem de pessoas e entidades. Por isso, é
muito importante aliar o conhecimento teórico – que dá fundamentação para as análises – com a capacidade
de colocar esse conhecimento na prática por meio de ferramentas como o R.
A ciência de dados, apesar de sua grande popularização nos últimos anos, não é uma área nova e nem é
uma mera tendência passageira. Ao contrário disso, pois o avanço da tecnologia tem nos permitido trabalhar
com volumes gigantescos de dados para atender a demandas cada vez mais crescentes dos diversos
setores da sociedade.
INTRODUÇÃO
No módulo anterior, vimos as principais características do pacote Survey para fazer as especificações e estimações da amostragem
estratificada no software R.
javascript:void(0)
A partir deste módulo, vamos explorar um pouco mais o pacote Survey, agora na amostragem por conglomerado. Veremos as diferenças
existentes nas funções decorrente de se utilizar a amostra dividida em cluster. Além disso, vamos fazer algumas comparações entre os
planos amostrais e veremos também a amostragem sistemática para se fazer seleções amostrais.
AMOSTRAGEM POR CONGLOMERADOS NO R
Outra abordagem muito utilizada no momento de elaboração do plano amostral é a amostragem por conglomerados (AC). A grande vantagem
desse plano diz respeito à parte operacional, no sentido de diminuir o custo de toda operação. Selecionar um conglomerado e investigar a
população ali dentro é, em geral, mais barato do que fazer os outros métodos de amostragem que discutimos acima.
 COMENTÁRIO
A AC pode ser feita em vários estágios, porém precisamos que nossa população esteja totalmente distribuída dentro de algum cluster.
Lembrando que na AC em 1 estágio, primeiro vamos selecionar os conglomerados e depois investigar todas as unidades ali dentro.
Voltemos a utilizar nossa base de dados MU284, com os 284 municípios da Suécia. Diferentemente dos casos anteriores, usaremos a
variável CL, que delimita o cluster para cada registro da base. Vamos, então, selecionar uma amostra por conglomerados simples sem
reposição em um estágio, onde os conglomerados são definidos com a variável CL em nossa população de municípios. Para fazer
comparações com os planos anteriores (estratificação, por exemplo), utilizaremos o mesmo tamanho de amostra, n = 80 municípios.
Faremos uma tabela exploratória para descobrirmos em quantos clusters nossa população está dividida:
library(sampling)
data(MU284)
dados=MU284
table(MU284$CL)
 Figura 7: Distribuição dos municípios dentro dos clusters.
Perceba na Figura 7 que a população de municípios está dividida em 50 conglomerados com uma distribuição bastante semelhante entre
eles. Para encontrarmos a média geral de municípios dentro dos conglomerados, basta calcularmos:
 Atenção! Para visualização completa da equação utilize a rolagem horizontal
Assim, cada conglomerado possui, em média, 5,68 municípios e se quisermos que nossa amostragem tenha um tamanho de amostra de
aproximadamente 80 municípios, teremos que selecionar cerca de 14 conglomerados (pois em média 14* 5,68 = 79.52).
Agora, podemos utilizar o pacote sampling com a função cluster para construir nossa amostra. A função cluster produz um objeto que
contém os conglomerados selecionados, o identificador dos municípios pertencentes a cada um dos conglomerados e as probabilidades de
seleção deles. Utilizando a semente com um valor igual a 5, fazemos no R:
set.seed(5)
ACS=cluster(MU284,clustername=c("CL"),size=14,method=c("srswor"))
Perceba como simplesmente entramos com o nome da base, o nome da variável que define os conglomerados, o tamanho de
conglomerados que queremos selecionar e o método de seleção dessas unidades, no caso a amostra aleatória simples sem reposição
(srswor).
Para vermos alguns conglomerados selecionados, podemos utilizar novamente o comando head() como:
head(ACS,10)
¯̄¯̄M 0 = = 5, 68
284
50
 Figura 8: Primeiras 10 unidades selecionadas e seus respectivos conglomerados.
Pela Figura 8, temos as respectivas identificações das unidades e de seus clusters. Repare que a probabilidade de seleção é a mesma para
todos os elementos, independente de qual cluster ele está. Lembre-se de que estamos fazendo um plano amostral conglomerado em 1
estágio, assim, dado que o cluster foi selecionado, todas as suas unidades serão investigadas. Logo, o que importa é a seleção dos
conglomerados, e não das unidades lá dentro. Essa probabilidade é fixa e dada pela quantidade de clusters que iremos selecionar dividida
pelo total existente, assim:
 Atenção! Para visualização completa da equação utilize a rolagem horizontal
Agora que já temos nossos conglomerados selecionados, vamos cruzar essa informação com nosso banco original e obter as outras
variáveis referentes a essas respectivas unidades amostrais. Utilizaremos novamente a função getdata, logo:
ACSs=getdata(MU284,ACS)
Para visualizarmos as informações das unidades de cada cluster selecionado, podemos fazer:
P(s)= = 0. 281450
fix(ACSs)
Lembre-se de fechar a janela antes de continuar. Outro ponto importante que devemos construir é o fator fpc. Dessa forma, adicionaremos
um vetor com o tamanho total dos conglomerados, que no caso vale 50. Assim, replicaremos o 50 de acordo com a dimensão do objeto
ACSs.
fpc2=rep(50,dim(ACSs)[1])
fpc2
Podemos agora fazer a especificação do nosso plano amostral a partir do pacote survey e da função svydesign.
library(survey)
PlanoC=svydesign(id=~CL,data=ACSs,probs=~ACS$Prob,fpc=~fpc2)
Diferentemente das especificações anteriores, agora nosso id não fica com o valor 0 ou 1, ele vai receber exatamente a variável de cluster,
na base é representada por CL. Podemos verificar a definição do plano amostral conglomerado construído pelo R, simplesmente rodando o
comando abaixo:
PlanoC
O resultado é dado por:
Perceba como o R descreve perfeitamente o plano que foi construído. Temos um plano conglomerado em 1 estágio com seleção de 14
clusters. Por fim, o último passo é fazer as estimativas para nossa variável de interesse P85. Assim, temos:
Estimativa da média e de seu erro padrão para a variável P85 considerando o plano amostral conglomerado em 1 estágio
svymean(~P85,PlanoC)
Com o resultado acima, nossa estimação da média populacional é de 28.354 pessoas e seu erro padrão é de, aproximadamente, 2.500
pessoas (lembre-se de que os dados estão em milhares).
Estimativa do total e de seu erro padrão para a variável P85 considerando o plano amostral conglomerado em 1 estágio
svytotal(~P85,PlanoC)
Para a estimação do total populacional, obtemos aproximadamente 8.800.000 pessoas com um erro padrão de aproximadamente 791.400
indivíduos.
Dessa forma, conseguimos obter estimativas para a média e total populacional da nossa variável P85. Você pode repetir todo o processo
para outra variável do banco e comparar os resultados.
OUTRA FORMA DE OBTER OS MESMOS RESULTADOS
Da mesma forma que fizemos na AE, podemos obter os mesmos resultados trocando a variável das probabilidades de seleção pela variável
peso. Como o peso e as probabilidades de seleção são grandezas inversas, podemos simplesmente fazer:
peso=1/ACS$Prob
ACS$Prob
peso
Com isso, construímos nosso vetor de pesos e podemos utilizá-lo dentro da função svydesign para fazermos a especificação do plano
amostral. Assim, temos:
PlanoC2=svydesign(id=~CL,data=ACSs,weights = peso,fpc=~fpc2)
svymean(~P85,PlanoC2)
svytotal(~P85,PlanoC2)
Compare os resultados, veja como são exatamente os mesmos, tanto para a estimativa da média quanto para o total.
RESULTADOS SEM O FPC
Vamos agora, novamente, fazer nossas estimativas ignorando o fator de correção de população finita. Nesse caso, basta eliminar o
parâmetro e fazer novamente as estimações. Vamos chamar esse desenho deplanoC_sem_fpc. Assim, temos:
planoC_sem_fpc = svydesign(id=~CL,data=ACSs,probs=~ACS$Prob)
Ou utilizando os pesos em vez das probabilidades de seleção:
planoC_sem_fpc = svydesign(id=~CL,data=ACSs,weights = peso)
As estimações são feitas por:
svymean(~P85, planoC_sem_fpc)
svytotal(~P85, planoC_sem_fpc)
A tabela abaixo faz a comparação entre as estimações do plano 1 ou 2 com o fator fpc e do plano 3 sem o fator:
Estimativa\ Plano amostral Plano 1 ou 2 (com FPC) Plano 3 (sem FPC)
Média (milhar) 28.354 28.354
Erro padrão da média (milhar) 2.5005 2.9468
Total (milhar) 8000 8000
Erro padrão do total (milhar) 791.4 932.68
 Atenção! Para visualizaçãocompleta da tabela utilize a rolagem horizontal
Tabela 2: Comparação dos resultados dos planos amostrais com e sem o fator FPC. Fonte: Autor.
Observe que as conclusões feitas a partir dos resultados na Tabela 2 são exatamente iguais aos resultados da Tabela 1, pois, ao comparar os
mesmos planos amostrais com as mesmas amostras, a utilização do fpc faz com que seja possível diminuir o erro da estimação. Ao comparar
as estimativas de média ou de total, os resultados foram exatamente os mesmos, porém o erro padrão das medidas com o fpc diminuiu.
Portanto, sempre que você tiver essa informação, utilize nas especificações do seu plano amostral.
COMPARAÇÃO ENTRE AS ESTIMAÇÕES DOS PLANOS
AMOSTRAIS
Após obter os resultados das estimativas da média, total e de seus respectivos erros padrões para amostras de tamanho aproximadamente
iguais sob planos amostrais diferentes, podemos reunir os valores obtidos na Tabela 3 abaixo:
Estimativa\ Plano amostral AAS (com FPC) AES (com FPC) ACS (com FPC)
Média (milhar) 28.688 20.068 28.354
Erro padrão da média (milhar) 2.5039 1.2715 2.5005
Total (milhar) 8147.2 5699.4 8000
Erro padrão do total (milhar) 711.12 361.1 791.4
 Atenção! Para visualizaçãocompleta da tabela utilize a rolagem horizontal
Tabela 3: Comparação dos resultados para a variável P85 para os planos amostrais utilizados. Fonte: Autor.
Perceba como o valor do erro padrão da amostragem estratificada é inferior aos outros dois métodos. Isso sugere que a AES tem uma
eficiência superior à AAS e à ACS. É interessante esse resultado do ponto de vista do tamanho da amostra, pois a estratificação consegue
obter resultados muito eficientes com um tamanho de amostra menor que a AAS, por exemplo. Já a ACS é um método, em geral, menos
eficiente que os demais, porém o custo de se fazer uma amostragem por ele costuma ser menor do que nos outros casos.
AMOSTRAGEM SISTEMÁTICA NO R
Nesse tipo de amostragem, selecionamos um ponto de partida da população e coletamos nossos elementos a partir de um intervalo de
retirada k. Os elementos devem estar dispostos de maneira organizada, como, por exemplo, uma fila ou uma lista, e isso feito de forma
aleatória. Se estivermos fazendo um levantamento de dados em uma fábrica de lâmpadas, podemos retirar uma lâmpada para teste a cada
100 peças produzidas.
Podemos também definir a amostra de acordo uma porcentagem P% da população que pode fazer parte da amostra. A partir daí,
encontramos o valor k por:
 Atenção! Para visualização completa da equação utilize a rolagem horizontal
Depois, sorteamos um número r inteiro entre 1 e k e a amostra será composta pelos elementos de ordem r; r + k; r + 2k; r + 3k; e assim,
sucessivamente. Vejamos um exemplo de como fazer essa seleção no software R:
Um restaurante deseja conhecer melhor o perfil de seus clientes e tem condições de entrevistar aproximadamente 20% dos mesmos. Em
média, 30 clientes passam pelo restaurante ao longo do dia num processo de fila bastante ordenada. Como fazer a seleção dessas
amostras?
ETAPA 1
ESTAPA 2
ESTAPA 3
ETAPA 1
Para fazermos essa seleção no R, utilizaremos funções bastante simples. Primeiro, encontraremos nosso K:
set.seed(10)
(k<- round((1/20)*100))
K ≅ * 1001
P
ETAPA 2
Com nosso intervalo estabelecido, vamos sortear nosso ponto de partida r:
(r<- sample(seq(1,k,1),1))
ETAPA 3
Com o intervalo de seleção e o ponto de partida, podemos indicar quais serão as amostras que deverão ser selecionadas para esse caso. É
possível também criar funções mais complexas que façam isso automaticamente ou apenas adicionar r+nk na função abaixo.
c(r,r+k,r+2*k, r+3*k, r+4*k, r+5*k)
Nesse caso, as unidades que farão parte da nossa amostra são: 3 8 13 18 23 28.
Um problema real na AS ocorre na estimação de medidas de precisão. De acordo com Bolfarine (2005), no caso em que a população está
em ordem aleatória, não existem muitos problemas em se estimar a variância da AS pelas expressões dos estimadores da AAS. Assim, você
pode usar as mesmas expressões e funções de estimação no R utilizados para a AAS.
AMOSTRAGEM SISTEMÁTICA E POR CONGLOMERADO NO
SOFTWARE R
VERIFICANDO O APRENDIZADO
CONCLUSÃO
CONSIDERAÇÕES FINAIS
Ao longo dos módulos, foi possível entender mais sobre a importância da utilização do software R na amostragem e na análise de dados
amostrais. O software, por ser livre e poder ser alimentado com bibliotecas do mundo inteiro, vem crescendo cada vez mais em termos de
usuários.
Inicialmente, discutimos alguns aspectos sobre o programa, como fazer a instalação do RStudio e alguns pacotes introdutórios de estatística.
Vimos, em seguida, a utilização do pacote sampling e como fazer seleções e estimações por meio da amostragem aleatória simples.
No segundo módulo, apresentamos características mais específicas sobre a biblioteca survey, utilizada para fazer estimações nos mais
diversos planos amostrais. Aprendemos como fazer uma amostragem estratificada no R e como usar o survey para fazer essas estimativas.
Comparamos algumas formas diferentes de obter os dados e aprendemos a fazer estimações específicas por estratificação.
Por fim, investigamos também a amostragem conglomerada e sistemática no R. Fizemos uma comparação dessas com as estimativas
obtidas por aleatórias simples, estratificada e conglomerada. Ficou claro como a eficiência da estratificação pode ser substancial no cálculo
das medidas de precisão.
Assim, temos certeza de que, ao longo deste conteúdo, você aprendeu um pouco sobre o software R, ferramenta tão utilizada na Estatística e
na Ciência de Dados, e como utilizá-lo no contexto da amostragem.
 PODCAST
AVALIAÇÃO DO TEMA:
REFERÊNCIAS
BOLFARINE, H.; BUSSAB, W. O. Elementos de Amostragem. São Paulo: Blucher, 2005.
BONAFINI, C. F. Probabilidade e Estatística. São Paulo: Pearson Education do Brasil, 2015.
COCHRAN, W. G. Sampling Techniques. 3rd. edition. New York: John Wiley & Sons, 1977.
LOHR, S. Sampling: Design and Analysis. 2nd. edition. USA: Duxbury Press, 2010.
MORETTIN, P. A.; BUSSAB, W. de O. Estatística Básica: Probabilidade e Inferência, Volume Único. São Paulo: Pearson Prentice Hall, 2010.
R-PROJECT. R Core Team. R: A language and environment for statistical computing. R Foundation for Statistical Computing, 2019, Vienna,
Austria. Consultado em meio eletrônico em: 28 out. 2020.
SÄRNDAL, C. E.; SWENSSON, B.; WRETMAN, J. Model assisted survey sampling. New York: Springer-Verlag, 1992.
EXPLORE+
Para saber mais sobre os assuntos tratados neste tema, leia:
PDF Pacote sampling, Cran
PDF Pacote survey, Cran
javascript:void(0);
javascript:void(0);
CONTEUDISTA
Leandro Vitral Andraos
Sérgio Assunção Monteiro

Continue navegando