Campionamento a grappolo presso pandas: con esempi


I ricercatori spesso prelevano campioni da una popolazione e utilizzano i dati del campione per trarre conclusioni sulla popolazione nel suo insieme.

Un metodo di campionamento comunemente utilizzato è il campionamento a grappolo , in cui una popolazione viene divisa in cluster e tutti i membri di determinati cluster vengono scelti per essere inclusi nel campione.

Questo tutorial spiega come eseguire il campionamento del cluster su un DataFrame panda in Python.

Esempio: campionamento di cluster in Panda

Supponiamo che un’azienda che offre tour della città voglia intervistare i propri clienti. Su dieci tour offerti al giorno, selezionano casualmente quattro tour e chiedono a ciascun cliente di valutare la propria esperienza su una scala da 1 a 10.

Il codice seguente mostra come creare un DataFrame panda con cui lavorare:

 import pandas as pd
import numpy as np

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

#createDataFrame
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

E il codice seguente mostra come ottenere un campione di clienti selezionando in modo casuale quattro visite e includendo ciascun membro di tali visite nel campione:

 #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

Dal risultato possiamo vedere che:

  • Nel campione sono stati inclusi 20 clienti del gruppo turistico n. 10.
  • Nel campione sono stati inclusi 20 clienti del gruppo turistico n. 6.
  • Nel campione sono stati inclusi 20 clienti del gruppo turistico n. 5.
  • Nel campione sono stati inclusi 20 clienti del gruppo turistico n. 3.

Pertanto, questo campione è composto da 80 clienti in totale provenienti da 4 diversi gruppi turistici.

Risorse addizionali

Comprendere i diversi tipi di metodi di campionamento
Campionamento stratificato nei panda
Campionamento sistematico dei panda

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *