Asignar cohorte de adquisición diaria
Como has visto en el vídeo, definir una cohorte es el primer paso del análisis de cohortes. Ahora vas a crear cohortes diarias basadas en el día en que cada cliente realizó su primera transacción.
Los datos se han cargado en el DataFrame online. Puedes imprimir sus primeras filas con online.head() en la consola.
Este ejercicio forma parte del curso
Segmentación de clientes en Python
Instrucciones del ejercicio
- Crea una función que reciba un objeto datetime y extraiga el año, mes y día de
x. - Crea la columna
InvoiceDaya partir de la columnaInvoiceDateaplicando la funciónget_day. - Crea un objeto
groupbyque agrupe por la variableCustomerIDy seleccioneInvoiceDaypara cálculos posteriores. - Crea la columna
CohortDayseleccionando el valor mínimo deInvoiceDay.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# Define a function that will parse the date
def get_day(x): return dt.datetime(x.year, ____, ____)
# Create InvoiceDay column
online['____'] = online['____'].apply(____)
# Group by CustomerID and select the InvoiceDay value
grouping = online.groupby('____')['____']
# Assign a minimum InvoiceDay value to the dataset
online['CohortDay'] = grouping.____('____')
# View the top 5 rows
print(online.head())