Our Client is an early-stage e-commerce company selling various products from daily essentials to high-end electronics and home appliances. They aim to increase purchases by sending discounts or coupons to users based on a predictive model that estimates purchase probability.
This project focuses on building a Propensity to Purchase Model using Python, with a primary objective of improving user engagement and ROI. We employ Propensity Modeling and RFM (Recency, Frequency, Monetary) Analysis to predict users' likelihood of making a purchase and to identify high-value customer segments.
The dataset contains purchase history data for an e-commerce company over a period of time.
- Understand Propensity Modeling.
- Understand RFM Analysis.
- Build a model to predict the purchase probability of each user in an e-commerce company using the Propensity Model.
- Language:
Python - Libraries:
pandas,scikit-learn,numpy,seaborn,datetime,matplotlib,missingno
- Import the required libraries and packages.
- Read the CSV file.
- Perform data preprocessing.
- Conduct exploratory data analysis.
- Univariate analysis
- Multivariate analysis
- Perform RFM Analysis.
- Perform feature engineering.
- Create modeling data.
- Build the predictive model.
- Make predictions.
input: Contains data and configuration files.config.yaml: Configuration parameters.final_customer_data.xlsx: Customer transaction data.final_customer_data_with_RFM_features.csv: Merged dataset with RFM values.ecom_product_data.csv: Transaction data for RFM modeling.
src: Contains modularized code for different project steps.engine.py: Main execution script.ml_pipeline: Modular functions.requirements.txt: List of required packages.
output: Stores the trained model for future use.lib: Reference notebooks from the project.