Исследователи часто берут образцы из населения и используют данные из выборки, чтобы сделать выводы о населении в целом.
Одним из широко используемых методов выборки является систематическая выборка , которая реализуется с помощью простого двухэтапного процесса:
1. Расположите каждого члена популяции в некотором порядке.
2. Выберите случайную начальную точку и выберите каждого n -го члена для включения в выборку.
В этом руководстве объясняется, как выполнять систематическую выборку в кадре данных pandas в Python.
Пример: систематическая выборка в Pandas
Предположим, учитель хочет получить выборку из 100 учеников из школы, в которой всего 500 учеников. Она предпочитает использовать систематическую выборку, в которой она размещает каждого ученика в алфавитном порядке в соответствии с его фамилией, случайным образом выбирает начальную точку и выбирает каждого пятого ученика для включения в выборку.
В следующем коде показано, как создать поддельный фрейм данных для работы с Python:
import pandas as pd
import numpy as np
import string
import random
#make this example reproducible
np.random.seed (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))
#create DataFrame
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
А следующий код показывает, как получить выборку из 100 студентов посредством систематической выборки:
#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)
Обратите внимание, что первый элемент, включенный в выборку, находился в первой строке исходного фрейма данных. Каждый последующий член в выборке расположен через 5 строк после предыдущего члена.
И с помощью shape() мы видим, что полученная нами систематическая выборка представляет собой фрейм данных со 100 строками и 2 столбцами.
Дополнительные ресурсы
Типы методов отбора проб
Кластерная выборка в Pandas
Стратифицированная выборка в Pandas