为什么反伽马函数不能产生原始x值?
码
x = 0.2 alpha = 2 u = sp.stats.gamma.cdf(x, alpha) x1 = sp.stats.invgamma.cdf(x, alpha) print "x: ", x print "G: ", u print "GInv:", x1
产量
x: 0.2 G: 0.0175230963064 GInv: 0.0404276819945
当我在Excel中执行类似的操作时,我得到相同的值.
=GAMMADIST(Q15,2,1,TRUE) =GAMMA.INV(Q16,2,1)
产量
0.2 0.017523096 0.2
我知道我只是忽略了一些东西,但我似乎无法弄清楚为什么反转不适合我.
在scipy.stats
,gamma
是伽马分布和invgamma
是逆伽马分布.这是两种不同的概率分布 - 请参阅维基百科文章,了解反伽玛与伽马分布的关系.
如果你想要倒数gamma.cdf
,请使用gamma.ppf
.例如,
In [7]: p = gamma.cdf([1, 2, 3], 0.5) In [8]: gamma.ppf(p, 0.5) Out[8]: array([ 1., 2., 3.])