Perform distribution analysis on heavy-tailed distributed data
Project description
heavytailed
Perform distribution analysis on heavy-tailed distributed data
Raw data are expected to be positive integers. Maximum likelihood estimation (MLE) will be performed to fit the following models to the data:
- Exponential distribution
- Power-law distribution
- Power-law distribution with exponential cutoff
- Pairwise power-law distribution
- Poisson distribution
- Yule–Simon distribution
- Lognormal distribution
- Truncated lognormal distribution
- Shifted power-distribution with exponential cutoff
- Truncated shifted power-law distribution
An optimizer based on sequential least squares programming (SLSQP) is applied to maximize the likelihood function. (Initially, it was based on L-BFGS-B, but L-BFGS-B cannot handle inequality constraints, which are used to avoid overflow.)
The model with minimum AIC (or say the largest Akaike weight) will be selected as the best-fitted model.
The analysis mainly focuses on the tails, and the start of the tail will be determined through minimizing the K-S distance between fitted models and the empirical distribution.
Installation:
pip install heavytailed
or
conda install -c wangxiangwen heavytailed
Example Usage:
from heavytailed import compare
compare.comparison('testdata/raw_25_bets.dat', xmin=25)
The MLE could be a non-convex function, therefore it is suggested to try different initial values (for distribution parameters) to avoid local minima.
If you find this package useful in your publication, please kindly consider citing the following two articles:
- Wang, X., & Pleimling, M. (2017). Foraging patterns in online searches. Physical Review E, 95(3), 032145.
- Wang, X., & Pleimling, M. (2018). Behavior analysis of virtual-item gambling. Physical Review E, 98(1), 012126.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file heavytailed-1.0.3.tar.gz
.
File metadata
- Download URL: heavytailed-1.0.3.tar.gz
- Upload date:
- Size: 11.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.6.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 62a9c9d1af99aa45b0eaeb798ee3c0073a992da1c0aa7b3e5a4e2d42f6812362 |
|
MD5 | b6543a2186fbc5b57eb4f5e1cc78d94c |
|
BLAKE2b-256 | 7094953bf7494df891b94f9599494d1ff19ad5fd8149eb23df68c0dd2cb6f5ec |
File details
Details for the file heavytailed-1.0.3-py3-none-any.whl
.
File metadata
- Download URL: heavytailed-1.0.3-py3-none-any.whl
- Upload date:
- Size: 18.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.6.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8d2d1668eb7850bc9a921b258d099dfb1f9b195d7550857a18c36f09aaee155f |
|
MD5 | 9aafb00abf570c69d03fff9bc1e53488 |
|
BLAKE2b-256 | 5394e2ef6f48008625713bf5cb1527e6ed9efe741260a9380fa09cc43948f2a7 |