如何在Python中计算对数正态累积分布函数的反函数?

5

我该如何在Python中计算对数正态累积分布函数的反函数?我正在尝试将一些使用函数[LOGINV][1]的Excel函数进行翻译。

例如:

LOGINV(0,005;2;0,5) yields 2,0382373

这里的0.005是概率,2是均值,0.5是标准差。

scipy.stats是否有类似的函数可供使用?

1个回答

9

是的:

from scipy import stats
import numpy as np
stats.lognorm(0.5, scale=np.exp(2)).ppf(0.005)

来自http://docs.scipy.org/doc/scipy-0.17.0/reference/generated/scipy.stats.lognorm.html

请确认您的数量的含义。实际上,2和0.5是随机变量Y=exp(X)的均值和标准差,其中X是代码中定义的对数正态分布(如Excel文档中所述)。代码中定义的分布的均值和标准差分别为8.37和4.46。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接