Kom igångKom igång gratis

Sampling från den bäst passande kontinuerliga fördelningen

Slumpmässigt urval från en välpassande sannolikhetsfördelning bidrar till att bevara integriteten. Samtidigt gör det det möjligt för behöriga parter att genomföra en noggrann statistisk analys av data.

I den här övningen anonymiserar du kolumnen monthly_income från IBM-datamängden. I föregående lektion fastställde du att den kontinuerliga fördelningen exponnorm passar bäst. Använd den för att modellera inkomsterna.

Datamängden är tillgänglig som hr.

Den här övningen är en del av kursen

Dataintegritet och anonymisering i Python

Visa kurs

Övningsinstruktioner

  • Importera modulen stats från paketet scipy.
  • Anpassa exponnorm-fördelningen till den kontinuerliga variabeln monthly_income för att hämta fördelningens parametrar och sedan generera samplen.
  • Sampla från exponnorm-fördelningen och ersätt monthly_income med hjälp av .rvs()-metoden. Ange storleken till samma längd som kolumnen.
  • Avrunda lönerna till närmaste heltal.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# Import stats from scipy
____

# Fit the exponnorm distribution to the continuous variable monthly income
params = ____

# Sample from the exponnorm distribution and replace monthly income
hr['monthly_income'] = ____

# Round the salaries to their closest integer
hr['monthly_income'] = ____

# See the resulting dataset
print(hr.head())
Redigera och kör kod