Систематический отбор проб в пандах (с примерами)
Исследователи часто берут образцы из популяции и используют данные выборки, чтобы сделать выводы о популяции в целом.
Обычно используемым методом выборки является систематическая выборка , которая реализуется в виде простого двухэтапного процесса:
1. Расположите каждого члена популяции в определенном порядке.
2. Выберите случайную отправную точку и выберите одного члена из n для включения в выборку.
В этом руководстве объясняется, как выполнять систематическую выборку в DataFrame pandas в Python.
Пример: систематический отбор проб среди панд
Предположим, учитель хочет получить выборку из 100 учеников из школы, в которой всего учатся 500 учеников. Она предпочитает использовать систематическую выборку, при которой она размещает каждого учащегося в алфавитном порядке на основе его фамилии, случайным образом выбирает отправную точку и выбирает каждого пятого учащегося для включения в выборку.
Следующий код показывает, как создать поддельный фрейм данных для работы с 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
А следующий код показывает, как получить выборку из 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 столбцов.
Дополнительные ресурсы
Типы методов выборки
Кластерная выборка в пандах
Стратифицированная выборка в пандах