Are there any built-in libraries in Python or Numpy to generate random numbers based on various common distributions, such as:
- Normal
- Poisson
- Exponential
- Bernoulli
And various others?
Are there any such libraries with multi-variate distributions?
Are there any built-in libraries in Python or Numpy to generate random numbers based on various common distributions, such as:
And various others?
Are there any such libraries with multi-variate distributions?
The random
module has tons of functions for generating random numbers in lots of way. Not sure it has multi-variate.
Numpy.random would be the next place to look.
#!/usr/bin/env python
from scipy.stats import bernoulli,poisson,norm,expon
bernoulli, poisson, norm, expon and many others are documented here
print(norm.rvs(size=30))
print(bernoulli.rvs(.3,size=30))
print(poisson.rvs(1,2,size=30))
print(expon.rvs(5,size=30))
All the distributions defined in scipy.stats have a common interface to the pdf, cdf, rvs (random variates). More info here.