Amostragem sistemática em pandas (com exemplos)


Os pesquisadores geralmente coletam amostras de uma população e usam os dados da amostra para tirar conclusões sobre a população como um todo.

Um método de amostragem comumente usado é a amostragem sistemática , que é implementada em um processo simples de duas etapas:

1. Coloque cada membro de uma população em uma determinada ordem.

2. Escolha um ponto de partida aleatório e selecione um membro dentre n para fazer parte da amostra.

Este tutorial explica como realizar amostragem sistemática em um DataFrame do pandas em Python.

Exemplo: amostragem sistemática entre pandas

Suponha que um professor queira obter uma amostra de 100 alunos de uma escola que tem 500 alunos no total. Ela opta por usar uma amostragem sistemática na qual coloca cada aluno em ordem alfabética com base no sobrenome, escolhe aleatoriamente um ponto de partida e seleciona cada quinto aluno para fazer parte da amostra.

O código a seguir mostra como criar um quadro de dados falso para trabalhar em Python:

 import pandas as pd
import numpy as np
import string
import random

#make this example reproducible
n.p. random . seeds (0)

#create simple function to generate random last names
def randomNames(size=6, chars=string. ascii_uppercase ):
    return ''. join (random. choice (chars) for _ in range(size))

#createDataFrame
df = pd.DataFrame({'last_name': [randomNames() for _ in range(500)],
                   'GPA': np. random . normal (loc=85, scale=3, size=500)})

#view first six rows of DataFrame
df. head ()

last_name GPA
0 PXGPIV 86.667888
1 JKRRQI 87.677422
2 TRIZTC 83.733056
3 YHUGIN 85.314142
4 ZVUNVK 85.684160

E o código a seguir mostra como obter uma amostra de 100 alunos por meio de amostragem sistemática:

 #obtain systematic sample by selecting every 5th row
sys_sample_df = df. iloc [::5]

#view first six rows of DataFrame
sys_sample_df. head ()

   last_name gpa
3 ORJFW 88.78065
8 RWPSB 81.96988
13 RACZU 79.21433
18 ZOHKA 80.47246
23 QJETK 87.09991
28 JTHWB 83.87300

#view dimensions of data frame
sys_sample_df. shape

(100, 2)

Observe que o primeiro membro incluído na amostra estava na primeira linha do quadro de dados original. Cada próximo membro da amostra está localizado 5 linhas após o membro anterior.

E usando shape() podemos ver que a amostra sistemática que obtivemos é um quadro de dados de 100 linhas e 2 colunas.

Recursos adicionais

Tipos de métodos de amostragem
Amostragem por cluster em pandas
Amostragem estratificada em pandas

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *