特殊包中可用的功能是通用功能,它遵循广播和自动数组循环.
让我们看看一些最常用的特殊功能 :
立方根函数
指数函数
相对误差指数函数
日志和指数函数
Lambert函数
排列和组合函数
Gamma函数
现在让我们简单了解这些函数.
Cubic Root函数
此立方根函数的语法是 - scipy.special.cbrt(x).这将获取 x 的元素方块根.
让我们考虑以下示例.
from scipy.special import cbrtres = cbrt([10, 9, 0.1254, 234])print res
上述程序将生成以下输出.
[2.15443469 2.08008382 0.50053277 6.16224015]
指数函数
指数函数的语法是 - scipy.special.exp10(x).这将计算10 ** x元素.
让我们考虑以下示例.
from scipy.special import exp10 res = exp10([2,9]) print res
上述程序将生成以下内容输出.
[1.00000000e + 02 1.00000000e + 09]
相对误差指数函数
此函数的语法为 - scipy.special.exprel(x).它生成相对误差指数,(exp(x) - 1)/x.
当 x 接近零时,exp(x)接近1,所以exp(x) - 1的数值计算可能会遭受灾难性的精度损失.然后实现exprel(x)以避免精度损失,这在 x 接近零时发生.
让我们考虑以下示例.
from scipy.special import exprelres = exprel([-0.25, -0.1, 0, 0.1, 0.25])print res
上述程序将生成以下输出.
[0.88479687 0.95162582 1. 1.05170918 1.13610167]
对数和指数函数
此函数的语法为 - scipy. special.logsumexp(X).它有助于计算输入元素的指数之和的对数.
让我们考虑以下示例.
from scipy.special import logsumexpimport numpy as npa = np.arange(10)res = logsumexp(a)print res
上述程序将生成以下输出.
9.45862974443
Lambert函数
此函数的语法是 - scipy.special.lambertw(x).它也被称为Lambert W函数. Lambert W函数W(z)被定义为w * exp(w)的反函数.换句话说,对于任何复数z,W(z)的值是z = W(z)* exp(W(z)).
Lambert W函数是具有无限多个分支的多值函数.每个分支给出方程z = w exp(w)的单独解.这里,分支用整数k索引.
让我们考虑下面的例子.这里,Lambert W函数是w exp(w)的倒数.
from scipy.special import lambertww = lambertw(1)print wprint w * np.exp(w)
上述程序将生成以下输出.
(0.56714329041 + 0j)(1 + 0j)
排列&组合
让我们分别讨论排列和组合,以便清楚地理解它们.
组合 : 组合函数的语法是 - scipy.special.comb(N,k).让我们考虑以下示例 :
from scipy.special import combres = comb(10, 3, exact = False,repetition=True)print res
上述程序将生成以下输出.
220.0
注意 : 仅在exact = False的情况下接受数组参数.如果k> N,N<0或k <0 0,然后返回0.
排列 : 组合函数的语法是 - scipy.special.perm(N,k). N个事物的排列一次取k,即N的k-排列.这也称为"部分排列".
让我们考虑下面的例子.
from scipy.special import permres = perm(10, 3, exact = True)print res
上述程序将生成以下输出.
720
Gamma函数
伽玛函数通常被称为广义阶乘,因为z * gamma(z)= gamma(z + 1)和gamma(n + 1)= n!,对于自然数'n'.
组合函数的语法是 - scipy.special.gamma(x). N个事物的排列一次取k,即N的k-排列.这也称为"部分排列".
组合函数的语法是 - scipy.special.伽马(X). N个事物的排列一次取k,即N的k-排列.这也称为"部分排列".
from scipy.special import gamma res = gamma([0,0.5,1,5]) print res
上述程序将生成以下输出.
[inf 1.77245385 1. 24.]