Python中的numpy.log()用法

numpy.log()是一个数学函数, 用于计算x(x属于所有输入数组元素)的自然对数。它是指数函数的倒数, 也是元素自然对数。自然对数对数是指数函数的逆函数, 因此log(exp(x))= x。以e为底的对数是自然对数。
句法

numpy.log(x, /, out=None, *, where=True, casting='same_kind', order='K', dtype=None, subok=True[, signature, extobj]) = < ufunc 'log'>

参数
x:类似数组
此参数定义numpy.log()函数的输入值。
out:ndarray, None或ndarray和None的元组(可选)
此参数用于定义存储结果的位置。如果定义此参数, 则它的形状必须类似于输入广播。否则, 将返回一个新分配的数组。元组的长度等于输出的数量。
其中:array_like(可选)
这是通过输入广播的条件。在此条件为True的位置, 将out数组设置为ufunc(通用函数)结果;否则, 它将保留其原始值。
强制转换:{‘ no’ , ‘ equiv’ , ‘ safe’ , ‘ same_kind’ , ‘ unsafe’ }(可选)
此参数控制可能发生的数据强制转换的类型。 “ 否” 表示完全不应该转换数据类型。 ” equiv” 表示仅允许字节顺序更改。 “ 安全” 是指唯一可以保留值的强制转换。 ” same_kind” 仅表示安全类型转换或同一类型中的类型转换。 “ 不安全” 表示可能会进行任何数据转换。
顺序:{‘ K’ , ‘ C’ , ‘ F’ , ‘ A’ }(可选)
此参数指定输出数组的计算迭代顺序/内存布局。默认情况下, 顺序为K。顺序’ C’ 表示输出应为C连续的。如果输入是F连续的, 并且如果输入是C连续的, 则顺序’ F’ 表示F连续, ‘ A’ 表示F连续, 则’ A’ 表示C连续。 ” K” 表示匹配输入的元素顺序(尽可能接近)。
dtype:数据类型(可选)
它覆盖计算和输出数组的dtype。
尝试:bool(可选)
默认情况下, 此参数设置为true。如果将其设置为false, 则输出将始终是严格数组, 而不是子类型。
签名
此参数允许我们为基础计算中使用的1-d循环” for” 提供特定的签名。
extobj
此参数是长度1、2或3的列表, 指定ufunc缓冲区大小, 错误模式整数和错误回调函数。
退货
【Python中的numpy.log()用法】该函数返回一个ndarray, 该ndarray包含x的自然对数值, 该值属于输入数组的所有元素。
范例1:
import numpy as npa=np.array([2, 4, 6, 3**8])ab=np.log(a)bc=np.log2(a)cd=np.log10(a)d

输出
array([2, 4, 6, 6561])array([0.69314718, 1.38629436, 1.79175947, 8.78889831])array([ 1., 2., 2.5849625 , 12.67970001])array([0.30103, 0.60205999, 0.77815125, 3.81697004])

在上述代码中
  • 我们导入了别名为np的numpy。
  • 我们使用np.array()函数创建了一个数组’ a’ 。
  • 我们已经声明了变量b, c和d, 并分别分配了np.log(), np.log2()和np.log10()函数的返回值。
  • 我们在所有函数中都传递了数组” a” 。
  • 最后, 我们尝试打印b, c和d的值。
在输出中, 显示了一个ndarray, 其中包含源数组的所有元素的log, log2和log10值。
范例2:
import numpy as npimport matplotlib.pyplot as pltarr = [2, 2.2, 2.4, 2.6, 2.8, 3]result1=np.log(arr)result2=np.log2(arr)result3=np.log10(arr)plt.plot(arr, arr, color='blue', marker="*")plt.plot(result1, arr, color='green', marker="o")plt.plot(result2, arr, color='red', marker="*")plt.plot(result3, arr, color='black', marker="*")plt.show()

输出
Python中的numpy.log()用法

文章图片
在上面的代码中
  • 我们导入了别名为np的numpy。
  • 我们还导入了别名为plt的matplotlib.pyplot。
  • 接下来, 我们使用np.array()函数创建了一个数组” arr” 。
  • 之后, 我们声明了变量result1, result2, result3, 并分别分配了np.log(), np.log2()和np.log10()函数的返回值。
  • 我们在所有函数中都传递了数组” arr” 。
  • 最后, 我们尝试绘制” arr” , result1, result2和result3的值。
在输出中, 显示了具有四个具有不同颜色的直线的图形。
范例3:
import numpy as npx=np.log([2, np.e, np.e**3, 0])x

输出
__main__:1: RuntimeWarning: divide by zero encountered in logarray([0.69314718, 1., 3., -inf])

在上面的代码中
  • 首先, 我们导入了别名为np的numpy。
  • 我们已经声明了变量” x” 并分配了np.log()函数的返回值。
  • 我们在函数中传递了不同的值, 例如整数值, np.e和np.e ** 2。
  • 最后, 我们尝试打印’ x’ 的值。
在输出中, 显示了一个ndarray, 其中包含源数组元素的日志值。

    推荐阅读