Muestreo a partir de la mejor distribución continua
El muestreo aleatorio a partir de una distribución de probabilidad bien ajustada ayuda a mantener la privacidad. Al mismo tiempo, permite que las partes autorizadas realicen un análisis estadístico preciso de los datos.
En este ejercicio, vas a anonimizar la columna monthly_income del conjunto de datos de IBM. En la lección anterior, determinaste que la distribución continua exponnorm era la que mejor se ajustaba. Úsala para modelar los ingresos.
El conjunto de datos está disponible como hr.
Este ejercicio forma parte del curso
Privacidad de datos y anonimización en Python
Instrucciones del ejercicio
- Importa el módulo
statsdel paquetescipy. - Ajusta la distribución
exponnorma la variable continuamonthly_incomepara obtener los parámetros de la distribución y después generar las muestras. - Muestra desde la distribución
exponnormy sustituyemonthly_incomeusando el método.rvs(). Especifica el tamaño para que sea el mismo que la longitud de la columna. - Redondea los salarios a su entero más cercano.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# 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())