add kpi function for customerplus
This commit is contained in:
parent
27e266c58e
commit
fa9c1c790e
|
@ -63,7 +63,7 @@ def df_coverage_modelization(sport, coverage_train = 0.7):
|
|||
def dataset_construction(min_date, end_features_date, max_date, directory_path):
|
||||
|
||||
# Import customerplus
|
||||
df_customerplus_clean = display_databases(directory_path, file_name = "customerplus_cleaned")
|
||||
df_customerplus_clean_0 = display_databases(directory_path, file_name = "customerplus_cleaned")
|
||||
df_campaigns_information = display_databases(directory_path, file_name = "campaigns_information", datetime_col = ['opened_at', 'sent_at', 'campaign_sent_at'])
|
||||
df_products_purchased_reduced = display_databases(directory_path, file_name = "products_purchased_reduced", datetime_col = ['purchase_date'])
|
||||
|
||||
|
@ -89,19 +89,8 @@ def dataset_construction(min_date, end_features_date, max_date, directory_path):
|
|||
# KPI sur le comportement d'achat
|
||||
df_tickets_kpi = tickets_kpi_function(tickets_information = df_products_purchased_reduced)
|
||||
|
||||
# KPI sur les données socio-demographique
|
||||
|
||||
## Le genre
|
||||
df_customerplus_clean["gender_label"] = df_customerplus_clean["gender"].map({
|
||||
0: 'female',
|
||||
1: 'male',
|
||||
2: 'other'
|
||||
})
|
||||
gender_dummies = pd.get_dummies(df_customerplus_clean["gender_label"], prefix='gender').astype(int)
|
||||
df_customerplus_clean = pd.concat([df_customerplus_clean, gender_dummies], axis=1)
|
||||
|
||||
## Indicatrice si individue vit en France
|
||||
df_customerplus_clean["country_fr"] = df_customerplus_clean["country"].apply(lambda x : int(x=="fr") if pd.notna(x) else np.nan)
|
||||
# KPI sur les données socio-démographiques
|
||||
df_customerplus_clean = customerplus_kpi_function(customerplus_clean = df_customerplus_clean_0)
|
||||
|
||||
print("KPIs construction : SUCCESS")
|
||||
|
||||
|
|
|
@ -93,5 +93,22 @@ def tickets_kpi_function(tickets_information = None):
|
|||
|
||||
return tickets_kpi
|
||||
|
||||
def customerplus_kpi_function(customerplus_clean = None):
|
||||
# KPI sur les données socio-demographique
|
||||
## Le genre
|
||||
customerplus_clean["gender_label"] = customerplus_clean["gender"].map({
|
||||
0: 'female',
|
||||
1: 'male',
|
||||
2: 'other'
|
||||
})
|
||||
gender_dummies = pd.get_dummies(customerplus_clean["gender_label"], prefix='gender').astype(int)
|
||||
customerplus_clean = pd.concat([customerplus_clean, gender_dummies], axis=1)
|
||||
|
||||
## Indicatrice si individue vit en France
|
||||
customerplus_clean["country_fr"] = customerplus_clean["country"].apply(lambda x : int(x=="fr") if pd.notna(x) else np.nan)
|
||||
|
||||
# Dummy if the customer has a structure id (tags)
|
||||
customerplus_clean['has_tags'] = customerplus_clean['structure_id'].apply(lambda x: 1 if not pd.isna(x) else 0)
|
||||
|
||||
return customerplus_clean
|
||||
|
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue
Block a user