如何使用random.expovariate()PYTHON绘制直方图
我有一个问题,显示顾客以每小时7次的速度进入酒吧,这个问题说明我需要使用random.expovariate()并生成一个显示100次到达时间的直方图。 到目前为止,我有这个如何使用random.expovariate()PYTHON绘制直方图,python,random,statistics,Python,Random,Statistics,我有一个问题,显示顾客以每小时7次的速度进入酒吧,这个问题说明我需要使用random.expovariate()并生成一个显示100次到达时间的直方图。 到目前为止,我有这个 import numpy as np from matplotlib import pyplot as plt import random def customers(): x=np.random.expovariate(7,100)
import numpy as np
from matplotlib import pyplot as plt
import random
def customers():
x=np.random.expovariate(7,100)
plt.hist(x,100)
plt.axis([-0,100,0,100])
plt.show()
return True
def main():
global history
print(customers())
if __name__ == "__main__":
main()
我得到了错误
AttributeError: 'module' object has no attribute 'expovariate'
此外,我不是100%这是我将如何显示图表,我已经研究了它,但没有找到一个明确的答案任何地方!
希望您能提供帮助以下是一些帮助您入门的内容:
import numpy as np
from matplotlib import pyplot as plt
import random
def customers():
x = [random.expovariate(7) for r in xrange(100)]
plt.hist(x,10)
plt.show()
return True
def main():
global history
print(customers())
if __name__ == "__main__":
main()
你的主要问题是:
np.random.expvariate()
而不是random.expvariate()
random.expVariate()
接受1个参数,而不是2个参数random.expovariate()
只生成一个数字,要创建直方图,您需要多个数字。在上面我创建了一个指数随机数列表谢谢只是为了比较一下,如果使用泊松分布,您将如何处理相同的问题?我对
python Poisson
进行了一次简单的搜索。寻找,你就会发现!