Zacznij terazZacznij za darmo

Próbkowanie z zachowaniem tego samego rozkładu prawdopodobieństwa

Wiele organizacji, takich jak US Census Bureau, publicznie udostępnia próbki zebranych danych o obywatelach. Zbiory te są najpierw anonimizowane przy użyciu różnych technik, a następnie publikowana jest niewielka część – od 1% do 5% – co pozwala na wykonywanie obliczeń. Próbkowanie zachowuje statystyczne właściwości danych, umożliwiając analizę i lepsze zrozumienie całej populacji.

W tym ćwiczeniu zanoninimizujesz kolumnę department z zbioru danych IBM HR, próbkując dane zgodnie z rozkładem oryginalnego zbioru.

Zbiór danych został wczytany jako hr.

To ćwiczenie jest częścią kursu

Prywatność danych i anonimizacja w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • Oblicz względne częstości każdej unikalnej wartości w kolumnie department.
  • Wyodrębnij prawdopodobieństwa z obiektu counts i zapisz je w zmiennej o nazwie distributions.
  • Wykonaj próbkowanie na podstawie wcześniej obliczonych rozkładów prawdopodobieństwa. Rozmiar próby powinien być taki sam jak rozmiar zbioru danych hr.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# 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())
Edytuj i uruchom kod