НачатьНачать бесплатно

Выборка из наилучшего непрерывного распределения

Случайная выборка из хорошо подобранного вероятностного распределения помогает защитить конфиденциальность данных. При этом она позволяет уполномоченным сторонам проводить точный статистический анализ.

В этом упражнении вы выполните анонимизацию столбца monthly_income из набора данных IBM. На предыдущем уроке было установлено, что наилучшим образом подходит непрерывное распределение exponnorm. Используйте его для моделирования доходов.

Набор данных доступен в переменной hr.

Это упражнение является частью курса

Конфиденциальность данных и анонимизация в Python

Посмотреть курс

Инструкции к упражнению

  • Импортируйте модуль stats из пакета scipy.
  • Подберите распределение exponnorm для непрерывной переменной monthly_income, чтобы получить параметры распределения и затем сгенерировать выборку.
  • Сгенерируйте выборку из распределения exponnorm и замените значения monthly_income с помощью метода .rvs(). Укажите размер выборки, равный длине столбца.
  • Округлите значения зарплат до ближайшего целого числа.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# 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())
Редактировать и запускать код