NumPy 函式 ptp()
計算陣列沿指定軸的峰值之差(即峰-峰值)。
這是它的功能:
- 峰-峰值:它計算沿指定軸的最大值和最小值之間的差值。
以下是語法:
numpy.ptp(a, axis=None, out=None, keepdims=<no value>)
a
:輸入陣列。axis
:沿其查找峰值的軸。默認情況下,它會將陣列展平。out
:可選的輸出陣列,用於放置結果。keepdims
:如果設置為 True,則保留大小為一的減少的維度。
例如:
import numpy as np
# 創建一個陣列 x = np.array([[4, 9, 2, 10], [6, 9, 7, 12]])
# x.shape is (2, 4)# 沿著軸 0 計算峰-峰值
result = np.ptp(x, axis=0)
#x[0] => [4, 9, 2, 10] #x[1] => [6, 9, 7, 12] #[6-4, 9-9, 7-2, 12-10]print(result)
# 輸出: [2 0 5 2]
在這個例子中,np.ptp(x, axis=0)
計算了沿著軸 0(列)的峰-峰值,結果是一個陣列 [2, 0, 5, 2]
,其中每個值代表相應列的峰-峰值。
import numpy as np
# 創建一個陣列 x = np.array([[4, 9, 2, 10], [6, 9, 7, 12]])
# x.shape is (2, 4)
# 沿著軸 1 計算峰-峰值
result = np.ptp(x, axis=1)
#x[:, 0] => [4, 6]
#x[:, 1] => [9, 9]
#x[:, 2] => [2, 7]
#x[:, 3] => [10, 12]
#[10 - 2, 12 - 6]
print(result)
# 輸出: [8, 6]
在這個例子中,np.ptp(x, axis=1)
計算了沿著軸 1(行)的峰-峰值,結果是一個陣列 [8, 6]
,其中每個值代表相應列的峰-峰值