在 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]

相关文章