Calcular un target agregado
Imagina que quieres construir un modelo predictivo que anticipe qué donantes tienen más probabilidad de donar más de 50 euros en un determinado mes.
Dispones de una base basetable que ya tiene una fila por cada donante de la población; la columna donor_id identifica al donante. La línea temporal indica que el target debe ser 1 si el donante ha donado más de 50 euros en enero de 2017 y 0 en caso contrario.
El dataframe de pandas gifts_201701 contiene todas las donaciones de enero de 2017. En este ejercicio añadirás la columna de target a la base.
Este ejercicio forma parte del curso
Análisis predictivo intermedio en Python
Instrucciones del ejercicio
- Construye
gifts_summed, que tenga para cada donante engifts_201701la suma de sus donaciones. - A partir de
gifts_summed, obtén una listatargetscon los donantes que donaron más de 50 euros en el periodo objetivo. - Añade el target a la basetable.
- Calcula e imprime la incidencia del target.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# Sum of donations for each donor in gifts_201701
gifts_summed = ____.groupby("____")["____"].____().reset_index()
# List with targets
targets = list(gifts_summed["id"][____["____"] > ____])
# Add targets to the basetable
basetable["target"] = pd.Series([____ if donor_id in targets else ____ for donor_id in basetable["donor_id"]])
# Calculate and print the target incidence
print(round(____["____"].____() / ____(____), 2))