scipy.special.logit#

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

用于 ndarray 的 Logit ufunc。

logit 函数定义为 logit(p) = log(p/(1-p))。注意 logit(0) = -inf, logit(1) = inf, 并且当 p<0 或 p>1 时 logit(p) 会产生 nan。

参数:
xndarray

要逐元素应用 logit 的 ndarray。

outndarray,可选

用于函数结果的可选输出数组

返回:
标量或 ndarray

与 x 形状相同的 ndarray。它的条目是 x 对应条目的 logit 值。

另请参阅

expit

注释

作为 ufunc,logit 接受一些可选的关键字参数。有关更多信息,请参阅 ufuncs

在 0.10.0 版本中添加。

示例

>>> import numpy as np
>>> from scipy.special import logit, expit
>>> logit([0, 0.25, 0.5, 0.75, 1])
array([       -inf, -1.09861229,  0.        ,  1.09861229,         inf])

expitlogit 的反函数

>>> expit(logit([0.1, 0.75, 0.999]))
array([ 0.1  ,  0.75 ,  0.999])

绘制 x 在 [0, 1] 范围内的 logit(x)

>>> import matplotlib.pyplot as plt
>>> x = np.linspace(0, 1, 501)
>>> y = logit(x)
>>> plt.plot(x, y)
>>> plt.grid()
>>> plt.ylim(-6, 6)
>>> plt.xlabel('x')
>>> plt.title('logit(x)')
>>> plt.show()
../../_images/scipy-special-logit-1.png