在Python中计算第n个轴上的离散差异
要计算第n个离散差异,请使用numpy.diff()方法。第一次差异是沿给定轴, out[i] = a[i+1] – a[i],更高阶差异是通过递归使用diff计算的。diff() 方法返回第n个差异。输出的形状与a相同,除了轴的维数小于n。输出的类型与a的任 意两个元素之间的差异类型相同。在大多数情况下,这与a的类型相同。一个显着的 例外是datetime64,它将导致timedelta64输出数组。
第一个参数是输入的数组。第二个参数是n,即值进行差异的次数。如果为零,则不进行差异。第三 个参数是差异所取的轴,默认为最后一个轴。第四个参数是要在差异之前将其附加到输入 数组的值或附加到该轴上的值。标量值在沿着轴的方向上将其扩展为具有长度1的数组, 在所有其他轴上沿着该输入数组的形状扩展。
操作步骤
首先,导入所需的库 -
import numpy as np
使用数组()方法创建一个numpy数组。 我们已经添加了int类型的带有nan的元素 -
arr = np.array([[10, 15, 30, 65], [80, 87, np.nan, 120]])
显示数组 -
print("Our Array...\n",arr)
检查尺寸 -
print("\nDimensions of our Array...\n",arr.ndim)
获取数据类型-
print("\nDatatype of our Array object...\n",arr.dtype)
要计算第n个离散差异,请使用numpy.diff()方法。第一次差异是沿给定轴, out[i] = a[i+1] – a[i],更高阶差异是通过递归使用diff计算的 -
print("\nDiscrete difference..\n",np.diff(arr, axis = 1))
示例
import numpy as np
#使用数组()方法创建一个numpy数组,我们已经添加了int类型的带有nan的元素
arr = np.array([[10, 15, 30, 65], [80, 87, np.nan, 120]])
#显示数组
print("Our Array...\n",arr)
#检查尺寸
print("\nDimensions of our Array...\n",arr.ndim)
#获取数据类型
print("\nDatatype of our Array object...\n",arr.dtype)
#要计算第n个离散差异,请使用numpy.diff()方法。第一次差异是沿给定轴,out[i] = a[i+1] - a[i],更高阶差异是通过递归使用diff计算的
print("\nDiscrete difference..\n",np.diff(arr, axis = 1))
输出结果
Our Array...
[[ 10. 15. 30. 65.]
[ 80. 87. nan 120.]]
Dimensions of our Array...
2
Datatype of our Array object...
float64
Discrete difference..
[[ 5. 15. 35.]
[ 7. nan nan]]