From 6d0f67bd310b50be2d53387fe96b827fab871291 Mon Sep 17 00:00:00 2001 From: arevelle-ensae Date: Thu, 14 Mar 2024 19:11:09 +0000 Subject: [PATCH] fix filter customer --- Descriptive_statistics/generate_stat_desc.py | 2 +- Descriptive_statistics/plot.py | 11 ++++++++--- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/Descriptive_statistics/generate_stat_desc.py b/Descriptive_statistics/generate_stat_desc.py index e9aa4e6..2086645 100644 --- a/Descriptive_statistics/generate_stat_desc.py +++ b/Descriptive_statistics/generate_stat_desc.py @@ -29,7 +29,7 @@ customer, campaigns_kpi, campaigns_brut, tickets, products = load_files(list_of_ # Identify anonymous customer for each company and remove them from our datasets outlier_list = outlier_detection(tickets, list_of_comp) -# Identify valid customer (customer who bought tickets after starting date) +# Identify valid customer (customer who bought tickets after starting date or received mails after starting date) customer_valid_list = valid_customer_detection(products) databases = [customer, campaigns_kpi, campaigns_brut, tickets, products] diff --git a/Descriptive_statistics/plot.py b/Descriptive_statistics/plot.py index 968a0d5..a6be21f 100644 --- a/Descriptive_statistics/plot.py +++ b/Descriptive_statistics/plot.py @@ -89,10 +89,15 @@ def outlier_detection(tickets, company_list, show_diagram=False): return outlier_list -def valid_customer_detection(products): +def valid_customer_detection(products, campaigns_brut): products_valid = products[products['purchase_date']>="2021-05-01"] - consumer_valid = products_valid['customer_id'].to_list() - return consumer_valid + consumer_valid_product = products_valid['customer_id'].to_list() + + campaigns_valid = campaigns_brut[campaigns_brut["sent_at"]>="2021-05-01"] + consumer_valid_campaigns = campaigns_valid['customer_id'].to_list() + + consumer_valid = consumer_valid_product + consumer_valid_campaigns + return consumer_valid def remove_elements(lst, elements_to_remove): return ''.join([x for x in lst if x not in elements_to_remove])