我有2個二維陣列,其中,每一行代表一個時間和每一列表示一個項目。我想找出每個項目的兩個數組之間的最大差異。 (我並不特別在意時間最大的不同是在這一點上找到這裏。)顯示陣列之間最大差值爲列表
我想創建的這些最大差異的列表,以便以後我可以找到該名單的最大的15家。
到目前爲止,我已經嘗試做這個事情來完成這項任務:
import numpy as np
array1 = [[1, 2, 3, 4, 5], [2, 4, 6, 8, 10], [3, 6, 9, 12, 15]]
array2 = [[6, 7, 8, 9, 10], [11, 22, 33, 44, 55], [1, 4, 9, 16, 25]]
num_items = np.shape(array1)[1]
num_timesteps = np.shape(array1)[0]
for counter in np.arange(0, num_items):
for counter2 in np.arange(0, num_timesteps):
diff_list = []
diff = array1[counter2][counter] - array2[counter2][counter]
diff = abs(diff)
diff_list.append(diff)
max_diff = []
max_diff.append(max(diff_list))
print max_diff
然而,這不打印實際列表。相反,它給了我一個項目列表,每個項目有最大的差異。
希望的輸出:[2,2,0,4,10]
電流輸出:[2] [2] [0] [4] [10]
所以,我的問題是:我怎樣才能找到我的兩個數組之間的最大差異,並將它們放在一個列表中?
我不知道我理解你想要的輸出,你可以爲您的數據提供期望的輸出? –
使用'abs(np.subtract(array1,array2))'。函數'abs()'用於避免負數 – DavidG