NumPy Log简介
在这篇文章中,我们将讨论Python中的NumPy log()函数。在Python中,NumPy是一个用于处理数组的模块,NumPy log()函数由NumPy模块提供,用于处理对数运算,这意味着log()函数是一个数学函数,将帮助我们在Python编程语言中计算自然对数。一般来说,自然对数是给定数组输入元素的指数函数exp()的逆运算,可以用公式格式定义为log(exp(x)) = x,其中x是输入数组的一个项目。
Python中NumPy的对数函数log()的工作原理
在这篇文章中,我们将详细讨论NumPy.log()函数,它是另一个数学运算,可以用于给定的数组,计算输入数组中给定项的以e为底的对数。在Python中,这个log()函数不仅可以用来寻找以e为底的对数,也可以用来寻找以2为底的对数,10为底的对数,我们应该注意,如果输入数组包含实数数据类型的值,那么这个log()函数返回的输出也是实数数据类型的,如果每个值不是以实数表示,那么这个函数也会产生nan,因为它也不了解哪个数据类型,从而导致浮点错误标记。同样,如果输入的数组项是复数,那么该函数也会返回复数分析值。因此,我们可以用NumPy的这个log()函数来处理一个单一的数字、一个数字或项目的列表、1和一个多维数组。
现在让我们在下面的章节中看看log()函数的语法和这个函数的例子,以便更好地理解它。
语法
numpy.log( input_array, out )
参数
- **Input_array:**该参数用于指定需要作为参数传递给log()函数的数组。
- **输出:**这是一个可选的参数,用于存储结果数组,是对给定数组计算log()函数后返回的输出数组。
NumPy Log的例子
现在让我们在下面的章节中看到演示log()函数的各种例子。但在开始举例之前,我们应该注意,在执行这个log()函数之前,我们应该先导入NumPy模块。
例子 #1
现在让我们看一个使用log()函数计算以e为底的对数的例子。
代码:
import numpy as np
print("Program to demonstrate log() function in base e.")
print("\n")
input_arr = [4, 6, 2, 9] print ("The given input array is as follows: ")
print(input_arr)
print("\n")
output_arr = np.log(input_arr)
print ("The result obtained in the array form is as follows:")
print(output_arr)
输出:
在上面的程序中,我们可以看到我们已经声明了一个包含4个元素的输入数组,并且我们已经打印了这个数组,如输出的截图所示。然后我们通过指定数组名称作为函数的参数将这个数组传递给log函数,我们没有提到任何基数,因此它将默认以e为基数,结果将再次返回一个数组,其中包含给定数组中的项目的日志值,正如我们在上面的截图中所看到的。
现在我们将看到另一个例子,我们将把给定数组中的项目的对数值打印成以2和10为基数。在这个例子中,我们还将看到如何找到指数函数形式为e^x或e ** x的项目的对数值,以及当我们找到这个指数函数的对数值时,其形式为ln(e^x) = x。
例子 #2
代码:
import numpy as nl
print("Program to demonstrate log() function with base 2 and 10:")
print("\n")
input_arr = [5, 8, 3, 7] print ("The given input array is as follows: ")
print(input_arr)
print("\n")
output_arr1 = nl.log2(input_arr)
print ("The result obtained in the array form for base 2 is as follows:")
print(output_arr1)
print("\n")
output_arr2 = nl.log10(input_arr)
print ("The result obtained in the array form for base 10 is as follows:")
print(output_arr2)
print("\n")
exp_arr = [ 2**4, 5**2] print("The given array having power raised valued items is as follows:")
print(exp_arr)
print("\n")
out_exparr = nl.log(exp_arr)
print("The result of the log values of exponential items is as follows:")
print(out_exparr)
输出:
在上面的程序中,我们可以看到我们首先声明了一个有4个元素的数组,然后我们要找到这些指定项目的以2为底和以10为底的对数值。其结果如上面的截图所示。在上面的程序中,我们还可以看到我们声明了一个数组,其中有一些项目的值,如幂级升值,如(2**4 = 2 ^4 = 16),如上面的输出截图所示,我们可以看到当我们打印这个指数值的数组时,它将打印乘以这些值后得到的值,因此它将找到这些值的值,然后它将找到如上面截图中的数组中得到的积值的对数值。
这个log()函数也可以用来查找单个数值的值;正如我们在上面的例子中看到的那样,我们直接在给出的列表或数组上工作。我们也可以使用NumPy模块创建一个数组,然后找到创建的数组的log值。现在让我们在下面的例子中演示这两个概念。
例子 #3
代码:
import numpy as nl
print("Program to demonstrate log() function for single value:")
print("\n")
print("The eulers constant value in Python numpy module")
print(nl.e)
print("\n")
out1 = nl.log(nl.e)
print ("The log value result obtained for the constant value is as follows:")
print(out1)
print("\n")
input_arr = nl.arange(start = 5, stop = 8)
print("The created array is as follows:")
print(input_arr)
print("\n")
out_arr = nl.log(input_arr)
print ("The log value result obtained for the created array is as follows:")
print(out_arr)
输出:
在上面的程序中,我们正在寻找欧拉常数和它的对数值。我们还使用NumPy模块的arrange()函数创建了一个数组,然后我们正在寻找这个创建的数组的对数值。
结语
本文的结论是,我们已经定义了numpy.log()函数,该函数用于查找给定项、数组或列表的对数值。在这篇文章中,我们看到了寻找以e、2和10为底的对数值的例子。在这篇文章中,我们还看到了如何寻找单个数值、数组和任何常量值的对数值的例子。