numpy日志示例| Python中的np 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]) = 

参量

np.log()方法很简单,因为它只有非常大的参数。

np.log()的三个参数是x,out和where,但是有三个以上的参数。

这些参数中的两个参数out和awhere参数不太常用。让我们一一看。

x:类似数组

x参数定义numpy log()函数的输入值。

out:ndarray,None或ndarray和None的元组(可选)

out参数用于定义存储结果的位置。如果我们定义out参数,它的形状必须类似于输入广播。否则,将返回一个新分配的数组。元组的长度等于输出的数量。

其中:array_like(可选)

这是通过输入广播的条件。在此条件为True的位置,将out数组设置为ufunc(通用函数)结果;否则,它将保留其原始值。

强制转换:{‘no’,’equiv’,’safe’,’same_kind’,’unsafe’}(可选)

广播参数控制可能发生的数据广播的类型。

“否”表示完全不应该转换数据类型。

“ equiv”表示仅允许字节顺序更改。

“安全”参数表示可以保留保留值的唯一强制类型转换。

参数“ same_kind”仅表示安全类型转换或同类中的类型转换。

“不安全”参数表示可能会进行任何数据转换。

顺序:{‘K’,’C’,’F’,’A’}(可选)

order参数定义输出数组的计算迭代顺序/内存布局。默认情况下,订单为K。

订单“ C”表示输出应为C连续的。

订单“ F”表示F连续,

如果输入是F连续的,则顺序“ A”表示F连续;如果输入是C连续的,则“ A”表示C连续。 “ K”表示匹配输入的元素顺序(尽可能接近)。

dtype:数据类型(可选)

它覆盖计算和输出数组的dtype。

subok:bool(可选)

默认情况下,subok参数设置为True。如果将其设置为False值,则输出将始终是严格数组,而不是子类型。

签名

通过签名参数,我们可以为基础计算中使用的一维循环“ for”提供特定的签名。

extobj

extobj参数是一个长度为1、2或3的列表,指定ufunc缓冲区大小,错误模式整数和错误回调方法。

返回值

Numpy log()函数返回包含x的自然对数值的ndarray,该值属于输入数组的所有元素。

使用log()函数的语法非常简单,但是当您有一些使用示例时,总是很容易理解代码。话虽如此,让我们看一些例子。

import numpy as np

data = np.array([1, 3, 5, 9])
print('The data array is: ', data)

logval = np.log(data)
print('The "logval" array is: ', logval)

输出量

The data array is:  [1 3 5 9]
The "logval" array is:  [0.         1.09861229 1.60943791 2.19722458]

在上面的代码中,首先,我们导入了别名为np的numpy,然后使用np.array()函数创建了一个数组数据。然后,我们使用了np log()方法来获取自然对数。

NP日志的图形表示

我们可以使用matplotlib库创建日志值的图形表示。

import numpy as np
import matplotlib.pyplot as plt

arr = [3, 3.4, 3.8, 4.2, 4.6, 5]
res = np.log(arr)
res2 = np.log2(arr)
res3 = np.log10(arr)
plt.plot(arr, arr, color="blue", marker="*")
plt.plot(res, arr, color="green", marker="o")
plt.plot(res2, arr, color="red", marker="*")
plt.plot(res3, arr, color="black", marker="*")
plt.show()

输出量

NP日志的图形表示

将np.log()与单个数字一起使用

在这里,我们将计算数学常数e(也称为欧拉数)的自然对数。

为此,我们将能够使用Numpy数组中的常量np.e。

如果进行打印,则可以看到该值:

print(np.e)

输出量

2.718281828459045

现在,让我们计算一下 ln(e) 使用np.log()。

import numpy as np

print(np.log(np.e))

输出量

 python3 app.py
1.0

这是相对简单的。

在这里,我们正在计算常数的自然对数 e“ width =” 10“ height =” 9“>因为该函数 <img class= 是指数的倒数。

如果您愿意,请尝试使用其他数字来运行此代码 。

在二维Numpy阵列上应用日志

首先,让我们创建Numpy数组。我们将使用np.arange来创建值从1到6的Numpy数组,然后使用Numpy reshape()方法将该数组重新整形为二维。

import numpy as np

D2_Array = np.arange(start=1, stop=7).reshape((2, 3))
print(D2_Array)

输出量

[[1 2 3]
 [4 5 6]]

现在,让我们使用Numpy log()计算自然对数。

import numpy as np

D2_Array = np.arange(start=1, stop=7).reshape((2, 3))
print(np.log(D2_Array))

输出量

[[0.         0.69314718 1.09861229]
 [1.38629436 1.60943791 1.79175947]]

同样,np.log()只是计算输入数组中每个元素的自然对数。

在这种情况下,输入是2 X 3数组(具有两行三列的二维数组),因此输出具有相同的形状。

总结

总结一下,Numpy对数函数相对简单:我们使用它来计算Numpy数组中值的自然对数。您可能会记得数学课中的对数。

自然对数是指数函数的倒数, e ^ x,这样:

[ ln(e^x) = x ]

计算日志在科学任务中相当普遍,而Numpy日志为我们提供了一种简便的方法来计算Python中的自然对数。

也可以看看

百分位数()

numpy convolve()

numpy随机randn()

资讯来源:由0x资讯编译自APPDIVIDEND,版权归作者Krunal所有,未经许可,不得转载
你可能还喜欢