我们在R中有qgamma,在excel中有gamm.inv,我无法在python中使用invgamma函数获得相同的值。 Excel中的敌人示例 GAMMA.INV(0.99,35,0.08)= 4.01,我可以使用qgamma从R获得相同的值,概率为0.99,alpha(scale)= 35.0,shape = 0.08。
但是当我使用invgamma.pdf(0.99,35,0.8)时,其返回值1.61787636512e-15
正确的做法是什么?我已经用pdf,ppf,cdf尝试了gamma和invgamma,但是没有任何东西与我从R或GAMMA.Excel中的qgamma获得的值匹配。
答案 0 :(得分:1)
qgamma
和GAMMA.INV
给出inverse cumulative distribution function中的gamma distribution。
invgamma
代表inverse gamma distribution,这是完全不同的东西。解释该差异超出了本网站的范围,因为它是统计问题,而不是编程问题,但是在继续之前,您应该真正了解它。
用于伽马分布的SciPy分布对象是scipy.stats.gamma
,逆累积分布函数的方法是ppf
,是“百分点函数”的缩写(逆CDF的另一个名称)。因此,您应该使用scipy.stats.gamma.ppf
。确保传递正确的参数。