当前位置: 首页>>编程示例 >>用法及示例精选 >>正文


Python SciPy special.xlog1py用法及代码示例

本文简要介绍 python 语言中 scipy.special.xlog1py 的用法。

用法:

scipy.special.xlog1py(x, y, out=None) = <ufunc 'xlog1py'>#

计算 x*log1p(y),如果 x = 0 则结果为 0。

参数

x array_like

乘数

y array_like

参数

out ndarray,可选

函数结果的可选输出数组

返回

z 标量或 ndarray

计算 x*log1p(y)

注意

例子

此示例说明如何使用该函数来计算几何离散随机变量的概率质量函数的对数。几何分布的概率质量函数定义如下:

其中 是单次成功的概率, 是单次失败的概率, 是获得第一次成功的尝试次数。

>>> import numpy as np
>>> from scipy.special import xlog1py
>>> p = 0.5
>>> k = 100
>>> _pmf = np.power(1 - p, k - 1) * p
>>> _pmf
7.888609052210118e-31

如果我们将 k 取为一个相对较大的数字,则概率质量函数的值可能会变得非常低。在这种情况下,采用 pmf 的对数会更合适,因为对数函数可以将值更改为更适合使用的比例。

>>> _log_pmf = xlog1py(k - 1, -p) + np.log(p)
>>> _log_pmf
-69.31471805599453

我们可以通过取 log pmf 的指数来确认我们得到的值接近于原始 pmf 值。

>>> _orig_pmf = np.exp(_log_pmf)
>>> np.isclose(_pmf, _orig_pmf)
True

相关用法


注:本文由纯净天空筛选整理自scipy.org大神的英文原创作品 scipy.special.xlog1py。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。