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],其中每個值代表相應列的峰-峰值