我用scipy.stats来计算不同足球比赛中进球的泊松概率分布,但我忍不住认为有一种更简单的方法可以做到这一点
假设我试图计算一场比赛总进球数少于3个的概率作为最终结果。目前我正在使用类似的方法(测试结果是正确的):
def under25(self, homeS, awayS):
under25 = 100 * (((poisson.pmf(0, homeS) * poisson.pmf(0, awayS)) +
(poisson.pmf(1, homeS) * poisson.pmf(0, awayS)) +
(poisson.pmf(0, homeS) * poisson.pmf(1, awayS)) +
(poisson.pmf(1, homeS) * poisson.pmf(1, awayS)) +
(poisson.pmf(2, homeS) * poisson.pmf(0, awayS)) +
(poisson.pmf(0, homeS) * poisson.pmf(2, awayS))))
return round(float(np.array2string(under25)), 5)
如果我以under25(2, 3)
的形式传入参数,则输出为12.4652
,这是正确的
我已经尝试了scipy.stats.poisson
下的所有函数,但它们都返回numpy数组,我还没有弄清楚自己或在线可以做什么
除了这条路,还有更短的路吗
始终可以将值作为numpy数组传递:
相关问题 更多 >
编程相关推荐