The random
module (http://docs.python.org/2/library/random.html) has several fixed functions to randomly sample from. For example random.gauss
will sample random point from a normal distribution with a given mean and sigma values.
I'm looking for a way to extract a number N
of random samples between a given interval using my own distribution as fast as possible in python
. This is what I mean:
def my_dist(x):
# Some distribution, assume c1,c2,c3 and c4 are known.
f = c1*exp(-((x-c2)**c3)/c4)
return f
# Draw N random samples from my distribution between given limits a,b.
N = 1000
N_rand_samples = ran_func_sample(my_dist, a, b, N)
where ran_func_sample
is what I'm after and a, b
are the limits from which to draw the samples. Is there anything of that sort in python
?
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…