Python中的概率分布函数

3 投票
1 回答
8952 浏览
提问于 2025-04-16 23:36

我知道怎么在Python里创建直方图,但我想要的是概率密度分布。

我们先从我的例子开始。我有一个数组d,里面有500000个元素。通过下面的代码,我正在制作一个简单的直方图,告诉我我的数组d中有多少元素落在每个区间里。

max_val=log10(max(d))
min_val=log10(min(d))

logspace = np.logspace(min_val, max_val, 50)
H=hist(select,bins=logspace,histtype='step')

问题是,这个图不是我想要的。我想要的是我的数组d的概率分布函数。我希望得到的是每个区间内元素的概率,而不是每个区间里有多少元素。我试过用normed=True,但这似乎不管用,因为我的区间是等距对数分布的。

1 个回答

2

不太清楚你提到的 hist 函数是什么。如果你在用 NumPy 的 histogram 函数,可以试着把 density 设置为 True。具体可以参考这个链接:http://docs.scipy.org/doc/numpy/reference/generated/numpy.histogram.html

撰写回答