Python中的 random.expovariate()函数
random
模块用于在Python中生成随机数。实际上不是随机的,而是用于生成伪随机数。这意味着可以确定这些随机生成的数字。
随机.expovariate()
expovariate()
是random
模块的内置方法。它用于返回具有指数分布的随机浮点数。
Syntax : random.expovariate(lambda)
Parameters :
lambda : a non zero value
Returns : a random exponential distribution floating number
if the parameter is positive, the results range from 0 to positive infinity
if the parameter is negative, the results range from 0 to negative infinity
示例 1:
# import the random module
import random
# determining the values of the parameter
lambda = 1.5
# using the expovariate() method
print(random.expovariate(lambda))
输出 :
0.22759592233982198
示例 2:我们可以多次生成数字并绘制图表以观察指数分布。
# import the required libraries
import random
import matplotlib.pyplot as plt
# store the random numbers in a
# list
nums = []
alpha = 3
for i in range(100):
temp = random.paretovariate(alpha)
nums.append(temp)
# plotting a graph
plt.plot(nums)
plt.show()
输出 :
示例 3:我们可以创建一个直方图来观察指数分布的密度。
# import the required libraries
import random
import matplotlib.pyplot as plt
# store the random numbers in a list
nums = []
lambda = 1.5
for i in range(10000):
temp = random.expovariate(lambda)
nums.append(temp)
# plotting a graph
plt.hist(nums, bins = 200)
plt.show()
输出 :