selfsimilar

Crates.ioselfsimilar
lib.rsselfsimilar
version0.1.0
sourcesrc
created_at2021-11-24 01:12:17.346966
updated_at2021-11-24 01:12:17.346966
descriptionA fast generator of discrete self similar random numbers
homepage
repositoryhttps://github.com/XiangpengHao/rust-selfsimilar
max_upload_size
id486636
size5,571
Xiangpeng Hao (XiangpengHao)

documentation

README

rust-selfsimilar

crates.io

A fast generator of discrete random numbers.

The self similar distribution (80-20 rule) was described in

Jim Gray, Prakash Sundaresan, Susanne Englert, Ken Baclawski, and Peter J. Weinberger.1994. Quickly generating billion-record synthetic databases. SIGMOD Rec. 23, 2 (June 1994), 243–252.
DOI:https://doi.org/10.1145/191843.191886

Integers between 1...N. The first h•N integers get 1-h of the distribution.

For example:

if N = 25 and h= .10,
then 80% of the weight goes to the first 5 integers.
and 64% of the weight goes to the first integer.

Usage

let dist = SelfSimilarDistribution::new(0, 100, 0.2);
let mut rng = rand::thread_rng();
let v = dist.sample(rng);
Commit count: 9

cargo fmt