Skip to main content

Calculate Clumpiness index by Zhang, Bradlow and Small (2015)

Project description

clumpi [klˈʌmpάɪ]

PyPI DOI

sample data in pandas DataFrame

Overview

A simple python package to calculate Clumpiness for RMFC analysis by Zhang, Bradlow & Small (2015). Easy use with clumpi.get_RFC()

Requirements

  • Python
  • pandas
  • numpy
  • matplotlib

works well with Google Colab.

Installation

Simply use pip install for install this from PyPI:

pip install clumpi

or you can from Git repo:

pip install git+https://github.com/jniimi/clumpi.git

(perhaps, git repo version may be newer.)

Dataset

Use your discrete time-series event data with ID and time.

  • Create DataFrame that records only the point in time when the event occurred in the time series data.
  • The name of the variables can be anything.
user_id t
Ava 1
Ava 4
... ...
Jack 3
Jack 10
... ...

Check out our sample dataset for further details.

df = clumpi.load_sample_data()
display(df)

sample data in pandas DataFrame

Usage

Log to Clumpiness

Use the function clumpi.get_RFC() to calculate. Specify following arguments.

  • id: a column name indicating user

  • t: a column name indicating discrete time (e.g., a day in a month), t starts from 1 (Not 0).

  • N: a maximum number of events during the period (e.g., # of days in a month)

  • M (optional): a number of iterations for the simulation to calculate threshold (3000 for default)

  • alpha (optional): a significance level for the test of regularity (0.05 for default)

  • plot (optional): bool whether plot the frequency by users

    By specifying the argument plot=True, then the function displays the following scatter plot. scatter plot by user_id

Simply Calculate H0

Use the function clumpi.calc_threshold() to calculate upper alpha % point in M times simulation.

All you need to specify are N, M, and alpha (See clumpi.get_RFC).

Acknoledgement

The simulation in this package is based on Appendix B by Zhang et al. (2015).

Zhang, Y., Bradlow, E. T., & Small, D. S. (2015). Predicting customer value using clumpiness: From RFM to RFMC. Marketing Science, 34(2), 195-208. https://doi.org/10.1287/mksc.2014.0873

Author and Citation

jniimi (@JvckAndersen)

@misc{niimi2024clumpi,
  author = {Junichiro Niimi},
  title = {clumpi: A Python package for calculating Clumpiness in RFMC analysis},
  year = {2024},
  publisher = {Zenodo},
  doi = {10.5281/zenodo.15202295},
  url = {https://github.com/jniimi/clumpi}
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

clumpi-1.0.1.tar.gz (5.0 kB view details)

Uploaded Source

File details

Details for the file clumpi-1.0.1.tar.gz.

File metadata

  • Download URL: clumpi-1.0.1.tar.gz
  • Upload date:
  • Size: 5.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.12

File hashes

Hashes for clumpi-1.0.1.tar.gz
Algorithm Hash digest
SHA256 faf7b7077886b8290ee846df5baf0e0b61c398c259fb3f6b88f5e77565ace63f
MD5 17fd706d718581b4ba504bee40fb1c6b
BLAKE2b-256 7efe2e213b6cefd756f9c93d5d7e474dd6a51a2fc8dbff56838495229ab73a2c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page