Кластерная выборка в Pandas (с примерами)


Исследователи часто берут образцы из населения и используют данные из выборки, чтобы сделать выводы о населении в целом.

Одним из широко используемых методов выборки является кластерная выборка , при которой совокупность разбивается на кластеры, и все члены некоторых кластеров выбираются для включения в выборку.

В этом руководстве объясняется, как выполнять кластерную выборку в кадре данных pandas в Python.

Пример: кластерная выборка в Pandas

Предположим, компания, организующая экскурсии по городу, хочет опросить своих клиентов. Из десяти туров, которые они проводят один день, они случайным образом выбирают четыре тура и просят каждого клиента оценить свой опыт по шкале от 1 до 10.

В следующем коде показано, как создать кадр данных pandas для работы:

import pandas as pd
import numpy as np

#make this example reproducible
np.random.seed (0)

#create DataFrame
df = pd.DataFrame({'tour': np.repeat (np.arange (1,11), 20),
 'experience': np.random.normal (loc=7, scale=1, size=200)})

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

 tour experience
1 1 6.373546
2 1 7.183643
3 1 6.164371
4 1 8.595281
5 1 7.329508
6 1 6.179532

А следующий код показывает, как получить выборку клиентов, случайным образом выбрав четыре тура и включив в выборку каждого участника этих туров:

#randomly choose 4 tour groups out of the 10
clusters = np.random.choice (np.arange (1,11), size=4, replace= False )

#define sample as all members who belong to one of the 4 tour groups
cluster_sample = df[df['tour']. isin (clusters)]

#view first six rows of sample
cluster_sample.head()

tour experience
40 3 5.951447
41 3 5.579982
42 3 5.293730
43 3 8.950775
44 3 6.490348 

#find how many observations came from each tour group
cluster_sample['tour']. value_counts ()

10 20
6 20
5 20
3 20
Name: tour, dtype: int64

Из вывода мы видим, что:

  • В выборку вошли 20 клиентов из туристической группы №10.
  • В выборку вошли 20 клиентов из туристической группы №6.
  • В выборку вошли 20 клиентов из туристической группы №5.
  • В выборку вошли 20 клиентов из туристической группы №3.

Таким образом, эта выборка состоит из 80 клиентов из 4 разных туристических групп.

Дополнительные ресурсы

Понимание различных типов методов выборки
Стратифицированная выборка в Pandas
Систематическая выборка в Pandas

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.