Échantillonner à partir de la même distribution de probabilité
De nombreuses organisations, comme le U.S. Census, publient des échantillons de données qu'elles recueillent sur des citoyennes et citoyens. Ces ensembles de données sont d'abord anonymisés à l'aide de diverses techniques, puis une toute petite fraction, de 1 % à 5 %, est publiée pour permettre les calculs. On sait que l'échantillonnage préserve les caractéristiques statistiques des données, ce qui permet d'étudier et de comprendre la population sous-jacente.
Dans cet exercice, vous allez anonymiser la colonne department de l'ensemble de données IBM HR en échantillonnant selon les distributions du jeu de données original.
L'ensemble de données a été chargé sous le nom hr.
Cette activité fait partie du cours
Confidentialité des données et anonymisation en Python
Instructions de l’exercice
- Obtenez les fréquences relatives de chaque valeur unique dans la colonne
department. - Extrayez les probabilités de
countset stockez-les dans une variable appeléedistributions. - Échantillonnez à partir des distributions de probabilité calculées précédemment. La taille de l'échantillon doit être la même que la taille de l'ensemble de données
hr.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Obtain the probability distribution counts
counts = ____
# Get the probability distribution values
distributions = ____
# Sample from the calculated probability distributions
hr['department'] = np.random.choice(counts.index,
p=____,
size=len(____))
# See the resulting DataFrame
print(hr.head())