Échantillonnage et estimateurs ponctuels

L’échantillonnage en Python

James Chapman

Curriculum Manager, DataCamp

Estimer la population de la France

Une carte de la France.

Un recensement demande à chaque ménage combien de personnes y vivent.

L’échantillonnage en Python

Il y a beaucoup de monde en France

Une carte de la France avec des icônes de personnes.

Les recensements coûtent très cher !

L’échantillonnage en Python

Échantillonner des ménages

Une carte de la France avec des icônes de personnes, dont certaines sont mises en évidence.

Il est moins cher d’interroger un petit nombre de ménages et d’utiliser des statistiques pour estimer la population

Travailler sur un sous-ensemble de la population s’appelle l’échantillonnage

L’échantillonnage en Python

Population vs échantillon

La population est l’ensemble complet des données

  • Ne désigne pas forcément des personnes
  • En général, la population complète est inconnue

 

L’échantillon est le sous-ensemble sur lequel vous calculez

L’échantillonnage en Python

Jeu de données d’évaluation du café

total_cup_points variety country_of_origin aroma flavor aftertaste body balance
90.58 NA Ethiopia 8.67 8.83 8.67 8.50 8.42
89.92 Other Ethiopia 8.75 8.67 8.50 8.42 8.42
... ... ... ... ... ... ... ...
73.75 NA Vietnam 6.75 6.67 6.5 6.92 6.83

 

  • Chaque ligne représente 1 café
  • 1338 lignes
  • Nous traiterons ceci comme la population
L’échantillonnage en Python

Points vs saveur : population

pts_vs_flavor_pop = coffee_ratings[["total_cup_points", "flavor"]]
      total_cup_points  flavor
0                90.58    8.83
1                89.92    8.67
2                89.75    8.50
3                89.00    8.58
4                88.83    8.50
...                ...     ...
1333             78.75    7.58
1334             78.08    7.67
1335             77.17    7.33
1336             75.08    6.83
1337             73.75    6.67

[1338 rows x 2 columns]
L’échantillonnage en Python

Points vs saveur : échantillon de 10 lignes

pts_vs_flavor_samp = pts_vs_flavor_pop.sample(n=10)
      total_cup_points  flavor
1088             80.33    7.17
1157             79.67    7.42
1267             76.17    7.33
506              83.00    7.67
659              82.50    7.42
817              81.92    7.50
1050             80.67    7.42
685              82.42    7.50
1027             80.92    7.25
62               85.58    8.17

[10 rows x 2 columns]
L’échantillonnage en Python

Échantillonnage en Python pour Series

  • Utilisez .sample() pour les DataFrames et Series pandas
cup_points_samp = coffee_ratings['total_cup_points'].sample(n=10)
1088    80.33
1157    79.67
1267    76.17
...     ... 
685     82.42
1027    80.92
62      85.58
Name: total_cup_points, dtype: float64
L’échantillonnage en Python

Paramètres de population et estimateurs ponctuels

Un paramètre de population est un calcul réalisé sur l’ensemble de la population

import numpy as np
np.mean(pts_vs_flavor_pop['total_cup_points'])
82.15120328849028

Un estimateur ponctuel, ou statistique d’échantillon, est un calcul réalisé sur l’échantillon

np.mean(cup_points_samp)
81.31800000000001
L’échantillonnage en Python

Estimateurs ponctuels avec pandas

pts_vs_flavor_pop['flavor'].mean()
7.526046337817639
pts_vs_flavor_samp['flavor'].mean()
7.485000000000001
L’échantillonnage en Python

Passons à la pratique !

L’échantillonnage en Python

Preparing Video For Download...