目录

SciPy - 特别套餐( Special Package)

特殊包中可用的功能是通用功能,它遵循广播和自动阵列循环。

让我们看看一些最常用的特殊功能 -

  • 立方根函数
  • 指数函数
  • 相对误差指数函数
  • 对数和指数函数
  • 兰伯特函数
  • 排列和组合功能
  • 伽玛功能

现在让我们简要地了解这些功能。

立方根函数

此立方根函数的语法是 - scipy.special.cbrt(x)。 这将获取x逐元素立方根。

让我们考虑以下示例。

from scipy.special import cbrt
res = 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 exprel
res = 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 logsumexp
import numpy as np
a = np.arange(10)
res = logsumexp(a)
print res

上述程序将生成以下输出。

9.45862974443

兰伯特函数

此函数的语法是 - 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 lambertw
w = lambertw(1)
print w
print w * np.exp(w)

上述程序将生成以下输出。

(0.56714329041+0j)
(1+0j)

排列和组合

让我们分别讨论排列和组合,以便清楚地理解它们。

Combinations - 组合函数的语法是 - scipy.special.comb(N,k)。 让我们考虑以下示例 -

from scipy.special import comb
res = comb(10, 3, exact = False,repetition=True)
print res

上述程序将生成以下输出。

220.0

Note - 仅对exact = False大小写接受数组参数。 如果k“N,N”0或k“0,则返回0。

Permutations - 组合函数的语法是 - scipy.special.perm(N,k)。 N个事物的排列一次取k,即N的k-排列。这也称为“部分排列”。

让我们考虑以下示例。

from scipy.special import perm
res = perm(10, 3, exact = True)
print res

上述程序将生成以下输出。

720

伽玛功能

对于自然数'n',伽马函数通常被称为广义阶乘,因为z * gamma(z)= gamma(z + 1)和gamma(n + 1)= n !,

组合函数的语法是 - scipy.special.gamma(x)。 N个事物的排列一次取k,即N的k-排列。这也称为“部分排列”。

组合函数的语法是 - scipy.special.gamma(x)。 N个事物的排列一次取k,即N的k-排列。这也称为“部分排列”。

from scipy.special import gamma
res = gamma([0, 0.5, 1, 5])
print res

上述程序将生成以下输出。

[inf  1.77245385  1.  24.]
<上一篇.SciPy - ODR
↑回到顶部↑
WIKI教程 @2018