两个随机变量x和y之和的概率分布由各个分布的卷积给出。我在数值上做这件事有些麻烦。在下面的例子中,x和y是均匀分布的,它们各自的分布近似为直方图。我的推理说直方图应该被卷积以给出x + y的分布。查找两个直方图的卷积
from numpy.random import uniform
from numpy import ceil,convolve,histogram,sqrt
from pylab import hist,plot,show
n = 10**2
x,y = uniform(-0.5,0.5,n),uniform(-0.5,0.5,n)
bins = ceil(sqrt(n))
pdf_x = histogram(x,bins=bins,normed=True)
pdf_y = histogram(y,bins=bins,normed=True)
s = convolve(pdf_x[0],pdf_y[0])
plot(s)
show()
其给出以下,
换句话说,三角分布,如所预期。但是,我不知道如何找到x值。如果有人能在这里纠正我,我将不胜感激。
如果你甚至没有在图表中指定它们,那么'x'值如何正确?另外,严格来说,'直方图'不会给你一个'pdf'这么简单的方法。但是,请首先考虑''n'的'箱'数量。谢谢 – eat
@eat:正确。查看修改。 – lafras