在Python / numpy / scipy中计算高斯生存函数的自然对数

时间:2016-06-10 19:00:13

标签: python numpy scipy statistics

我可以使用

计算高斯分布的生存函数的自然对数
np.log( scipy.stats.norm.sf(s) )

我需要计算一些非常大的s值(可能高达1000)的生存函数,但是上面的函数在s = 37附近达到双点机器精度。是否有一些函数我可以用来计算日志生存功能直接?

注意:我不相信我的基础分布是高斯分布到那么多sigma,但我需要生存函数来计算弱信号的一些属性(3-4 sigma),而我希望算法在非常强的信号存在的情况下做一些合理的事情。

1 个答案:

答案 0 :(得分:3)

使用logsfscipy.stats.norm方法。

例如:

In [67]: from scipy.stats import norm

In [68]: norm.logsf(1000)
Out[68]: -500007.82669481222