Metadata-Version: 2.1
Name: Custmr_segmentation
Version: 0.0.0
Summary: A customer segmentation package for preprocessing data
Home-page: 
Author: Phalguni
Author-email: phalgunishenoy2002@gmail.com
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.6
Description-Content-Type: text/markdown
License-File: LICENSE

# Customer Segmentation Package

## Overview

This data analysis package provides comprehensive tools for preprocessing, feature engineering, clustering, and feature selection/reduction of data. It streamlines and automates common data analysis tasks, making it easier to prepare datasets for further analysis and machine learning. The package includes functionalities for validating data structure, handling missing values, removing outliers, scaling data, and much more.

## Features

- **Data Preprocessing**
  - **Data Structure Validation:** Ensures that the dataset meets expected structural requirements.
  - **Null Value Removal:** Identifies and removes or imputes missing values.
  - **Outlier Removal:** Detects and removes outliers from the dataset.
  - **Data Scaling:** Standardizes or normalizes data for consistent analysis.

- **Feature Engineering**
  - **RFM (Recency, Frequency, Monetary) Calculation:** Computes RFM metrics for customer segmentation and analysis.
  - **Velocity Calculation:** Measures the rate of change in data over time.
  - **Growth Calculation:** Computes the growth metrics across data points.

- **Feature Selection and Reduction**
  - **Information Gain Calculation:** Evaluates the importance of features in predicting target variables.
  - **WOE (Weight of Evidence) and IV (Information Value) Calculation:** Assesses the predictive power of categorical features.
  - **PCA (Principal Component Analysis):** Reduces dimensionality of data and allows for inverse transformation to original space.

- **Advanced Clustering**
  - **Best Clustering Method Selection:** Provides various clustering algorithms (e.g., KMeans, DBSCAN, EM, MeanShift, Agglomerative) and selects the most suitable one based on data characteristics.
  

## Requirements

To use this package, you need to have the following installed:

- Python 3.7 or higher
- The following Python libraries:
  - `pandas`
  - `numpy`
  - `scikit-learn`
  - `scipy`
  - `matplotlib`
  - `seaborn`
  - `statsmodels`

You can install these dependencies using:

```bash
pip install -r requirements.txt
```
To import the package,you can use the following format:
```bash
from customer_segmentation_clustering import main
```

