欧拉数,也称为“e”,是一个重要的数学常数,以 18 世纪数学家 Leonhard Euler 的名字命名。据估计,这个数字的精确度超过万亿位,是数学计算的重要工具。
2.718281828459045……
欧拉数
末尾的点表示数字的个数,从而推断“e”属于无理数类别。我们首先使用以下代码导入numpy库。
在本文中,我们将探讨欧拉数的历史以及如何在 Numpy Exmp1() 函数中使用它。
import numpy as np |
此后,我们将 通过以下各节进一步探讨expm1( ) 函数。
- expm1( ) 函数的语法
- 为什么使用expm1(x)而不是exp(x)-1?
- 在标量上使用expm1( )
- 在 N 维数组上使用expm1( )
expm1( ) 函数的语法
expm1( )的功能与exp( )函数的功能类似,其中“ e”求给定数字的幂,然后从中减去一 (1)。以下是expm1( )函数的语法,其中包含其运行所需的强制输入和可选输入。
numpy.expm1(x, out = None , * , where = True , dtype = None ) |
在哪里,
- x – N 维数组或标量,要求e次方
- out –默认情况下设置为none的可选构造,但可用于将结果存储在与输出长度相同的所需数组中
- * – kwargs 或关键字参数,它是一个可选构造,用于将参数的关键字可变长度传递给函数
- 其中 –一个可选结构,当设置为True (默认设置)时,用于计算给定位置的通用函数 (ufunc) ;当设置为False时,不计算
- dtype –一个可选结构,用于指定正在使用的数据类型
为什么使用 expm1(x) 而不是 exp(x)-1?
您可能想知道为什么需要构建一个特定的函数来从指数中删除一个,而不是使用已经可用的函数exp( ) 并从中删除一个!(即)exp(x)-1。
让我们这样做并找出是否存在任何可观察到的差异。
x = 1.5 np.exp(x) - 1 np.expm1(x) |
以下是上述代码的结果。
嗯,看起来一切都很好,两个结果是同义词。但是,如果我们稍微减少“x”并部署相同的功能会怎么样?这些能够返回相同的结果吗?让我们来看看吧!
x = 0.0001 np.exp(x) - 1 np.expm1(x) |
现在的结果不一样了,不是吗?布哈哈哈哈!(阴险的笑声)
这背后的主要原因是任何接近“0”的数字的指数将非常接近“1”。因此,exp(x)-1在返回结果方面似乎并不那么准确,并且Python 的numpy库中提供了专用函数expm1( ) 。
在标量上使用 expm1( )
您还可以通过向expm1( )函数分配一个负数来查找结果。这将依次返回exp(x) 的等价物,对其进行倒数运算,然后从中删除“1”。对于那些想直接跳到结果的人来说,它们就在这里!
a = - 10 b = 0.000000009 np.expm1(a) np.expm1(b) |
在 N 维数组上使用 expm1( )
当应用于 N 维数组时,expm1( ) 函数也适用,如下所示。
ar1 = np.array([[ 1 , 8 , 0.09 ], [ 5.007 , - 3.303 , 2 ]]) np.expm1(ar1) |
结论
现在我们已经到了本文的结尾,希望它已经详细说明了如何使用 numpy 库中的 expm1( ) 函数。这是另一篇文章,详细介绍了Python 中numpy 库中的nextafter()函数 的用法。AskPython中还有许多其他有趣且内容丰富的文章,可能对那些希望提高 Python 水平的人有很大帮助。 马泽尔托夫!