首页 > 解决方案 > 对于 Python 中给定的二项分布,binom.mean() 和 n*p 有什么区别?

问题描述

我使用 Scipy 模块创建了一个二项式分布 wend = stats.binom.pmf(np.arange(4),3,.868)

现在,当我使用均值函数计算此分布的平均值时,我得到以下结果

Mean = wend.mean()

0.25

但是,如果我们使用二项分布的均值公式,即 n*p,我们得到 0.86 * 3,即

2.604

为什么上面两个有区别?

标签: scipystatistics

解决方案


您将所有 4 个可能结果的概率相加并除以 4。这不是分布的平均值。那只是1/4。

分布的平均值是(wend * np.arange(4)).sum()。将每个结果的概率乘以结果的值并将结果相加。


推荐阅读