在 Python 中计算第 n 个离散差值
pythonnumpyserver side programmingprogramming
要计算第 n 个离散差值,请使用 numpy.diff() 方法。第一个差值由给定轴上的 out[i] = a[i+1] - a[i] 给出,更大的差值通过递归使用 diff 计算。diff() 方法返回第 n 个差值。输出的形状与 a 相同,但沿轴的维度小 n。输出的类型与 a 中任意两个元素之间的差值的类型相同。在大多数情况下,这与 a 的类型相同。一个值得注意的例外是 datetime64,它会产生一个 timedelta64 输出数组。
第一个参数是输入数组。第二个参数是 n,即值相差的次数。如果为零,则按原样返回输入。第三个参数是沿其进行差值的轴,默认为最后一个轴。第 4 个参数是在执行差分之前沿轴添加或附加到输入数组的值。标量值扩展为在轴方向上长度为 1 的数组,在所有其他轴上输入数组的形状。
步骤
首先,导入所需的库 −
import numpy as np
使用 array() 方法创建 numpy 数组。我们添加了带有 nan − 的 int 类型元素
arr = np.array([10, 15, 30, 65, 80, 87, np.nan])
显示数组 −
print("我们的数组...\n",arr)
检查维度 −
print("\n我们的数组的维度...\n",arr.ndim)
获取数据类型 −
print("\n我们的数组对象的数据类型...\n",arr.dtype)
要计算第 n 个离散差值,请使用 numpy.diff() 方法。第一个差值由 out[i] = a[i+1] - a[i] 沿给定轴给出,更高的差值通过递归使用 diff 计算 −
print("\nDiscrete difference..\n",np.diff(arr))
示例
import numpy as np # 使用 array() 方法创建 numpy 数组 # 我们已使用 nan 添加了 int 类型的元素 arr = np.array([10, 15, 30, 65, 80, 87, np.nan]) # 显示数组 print("我们的数组...\n",arr) # 检查维度 print("\n我们的数组的维度...\n",arr.ndim) # 获取数据类型 print("\n我们的数组对象的数据类型...\n",arr.dtype) # 要计算第 n 个离散差异,请使用 numpy.diff() 方法 # 第一个差异由 out[i] = a[i+1] - a[i] 沿给定轴给出,更高的差异通过递归使用 diff 计算。 print("\n离散差异..\n",np.diff(arr))
输出
我们的数组... [10. 15. 30. 65. 80. 87. nan] 我们的数组的维度... 1 我们的数组对象的数据类型... float64 离散差异.. [ 5. 15. 35. 15. 7. nan]