Get startedGet started for free

Assign daily acquisition cohort

As you have seen in the video, defining a cohort is the first step to cohort analysis. You will now create daily cohorts based on the day each customer has made their first transaction.

The data has been loaded as online DataFrame, you can now print its header with online.head() in the console.

This exercise is part of the course

Customer Segmentation in Python

View Course

Exercise instructions

  • Create a function by passing a datetime object extracting year, month and day from x.
  • Create a InvoiceDay column by passing the InvoiceDate columns and applying the get_day function.
  • Create a groupby object that groups CustomerID variable, and selects InvoiceDay for further calculations.
  • Create a CohortDay column by selecting the minimum InvoiceDay value.

Hands-on interactive exercise

Have a go at this exercise by completing this sample code.

# 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())
Edit and Run Code