在Python中計算無符號整數陣列的n階差分


要計算n階差分,可以使用numpy.diff()方法。一階差分由out[i] = a[i+1] - a[i]給出,沿著給定的軸計算,高階差分透過遞迴使用diff計算。第一個引數是輸入陣列。第二個引數是n,即差分值的次數。如果為零,則按原樣返回輸入。第三個引數是進行差分的軸,預設為最後一個軸。

第四個引數是在執行差分之前,沿軸預先附加到輸入陣列或附加到輸入陣列的值。標量值擴充套件到沿軸方向長度為1的陣列,並且沿所有其他軸的形狀與輸入陣列相同。否則,維度和形狀必須與a匹配,除了沿軸方向。

步驟

首先,匯入所需的庫:

import numpy as np

使用array()方法建立一個numpy陣列。我們添加了無符號型別的元素。對於無符號整數陣列,結果也將是無符號的:

arr = np.array([1,0], dtype=np.uint8)

顯示陣列:

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))

示例

import numpy as np

# Creating a numpy array using the array() method
# We have added elements of unsigned type
# For unsigned integer arrays, the results will also be unsigned.
arr = np.array([1,0], dtype=np.uint8)

# Display the array
print("Our Array...\n",arr)

# Check the Dimensions
print("\nDimensions of our Array...\n",arr.ndim)

# Get the Datatype
print("\nDatatype of our Array object...\n",arr.dtype)

# To calculate the n-th discrete difference, use the numpy.diff() method
# The first difference is given by out[i] = a[i+1] - a[i] along the given axis, higher differences are calculated by using diff recursively.
print("\nDiscrete difference..\n",np.diff(arr))

輸出

Our Array...
[1 0]

Dimensions of our Array...
1

Datatype of our Array object...
uint8

Discrete difference..
[255]

更新於:2022年2月25日

96 次瀏覽

啟動您的職業生涯

完成課程獲得認證

開始
廣告