Campionamento a grappoli

Analisi dei dati da sondaggio in Python

EbunOluwa Andrew

Data Scientist

Cos'è il campionamento a grappoli?

  • L'intera popolazione è divisa in più sottogruppi

    • I sottogruppi hanno caratteristiche simili alla popolazione
  • Popolazione -> Grappoli

  • Non si campionano individui: si seleziona casualmente l'intero sottogruppo

grafico a torta composto da persone

Analisi dei dati da sondaggio in Python

Perché il campionamento a grappoli è importante

  • Non sempre possiamo raccogliere dati sull'intera popolazione
  • Riduci l'errore dovuto all'ampiezza della popolazione

sovrappopolazione

Analisi dei dati da sondaggio in Python

Passi del campionamento a grappoli

  • Primo, dividi la popolazione in grappoli
  • Poi, seleziona casualmente questi grappoli

gruppo di persone

Analisi dei dati da sondaggio in Python

Dataset di esempio

print(mh_survey)
| gender | sought_treatment | country_work             |
|--------|------------------|--------------------------|
| Male   |                0 | United Kingdom           |
| Male   |                1 | United States of America |
| Male   |                1 | United Kingdom           |
| Male   |                1 | United Kingdom           |
| Female |                1 | United States of America |
| Male   |                1 | United Kingdom           |
| Male   |                0 | United States of America |
...
Analisi dei dati da sondaggio in Python

Dataset e grafico di esempio

mh_survey.groupby('country_work')[
  'gender'].count()
groups = mh_survey.groupby(
  'country_work')['gender'].count(
).reset_index()
groups.columns=['country_work','count']

groups.plot.bar(x='country_work',
                y='count')

grafico a barre dei luoghi in cui vivono i lavoratori tech

1 _dati parziali tracciati per spazio_
Analisi dei dati da sondaggio in Python

Scegli i grappoli

unique_countries = list(set(mh_survey.country_work))

random_clusters = np.random.choice(unique_countries, size = 10, replace = False)

print(random_clusters)
array(['Finland', 'Australia', 'Sweden', 'South Africa', 'Pakistan',
       'France', 'Ecuador', 'United Arab Emirates', 'United Kingdom',
       'Bangladesh'], dtype='<U24')
Analisi dei dati da sondaggio in Python

Crea il campione a grappoli

cluster_sample = mh_survey[mh_survey.country_work.isin(random_clusters)]
print(cluster_sample.head())
| gender | sought_treatment | US_state_live        |
|--------|------------------|----------------------|
| Male   |                1 |             Pakistan |
| Male   |                1 |             Pakistan |
| Male   |                1 | United Arab Emirates |
| Male   |                1 |             Pakistan |
| Female |                0 |           Bangladesh |
Analisi dei dati da sondaggio in Python

Grafica il campione a grappoli

treatment_pie = cluster_sample.sought_treatment.value_counts(normalize = True)
treatment_pie.plot.pie()

grafico a torta di sought_treatment

Analisi dei dati da sondaggio in Python

Grafica il campione a grappoli

array(['Bangladesh', 'South Africa', 'Other', 'Norway', 'Poland',
       'Romania', 'New Zealand', 'France', 'United States of America',
       'Bulgaria'], dtype='<U24')

grafico a torta di sought_treatment

Analisi dei dati da sondaggio in Python

Passons à la pratique !

Analisi dei dati da sondaggio in Python

Preparing Video For Download...