我有以下 numpy 陣列:
A = np.array([[1,2,3,4,5],
[15,25,35,45,55]])
我想通過將每個維度除以維度的最后一個元素來創建一個具有相同形狀的新陣列
所需的輸出是:
B = np.array([[0.2,0.4,0.6,0.8,1],
[0.27272727,0.45454545,0.63636364,0.81818182,1]])
任何的想法 ?
uj5u.com熱心網友回復:
你是這個意思?
B = np.array([[A[i][j]/A[i][len(A[i])-1] for j in range(0,len(A[i]))] for i in range(0,len(A))])
uj5u.com熱心網友回復:
您可以使用以下方法實作此目的:
[list(map(lambda i: i / a[-1], a)) for a in A]
結果:
[[0.2, 0.4, 0.6, 0.8, 1.0], [0.2727272727272727, 0.45454545454545453, 0.6363636363636364, 0.8181818181818182, 1.0]]
uj5u.com熱心網友回復:
切片最后一個元素,同時保持尺寸和分割:
B = A/A[:,[-1]]
輸出:
array([[0.2 , 0.4 , 0.6 , 0.8 , 1. ],
[0.27272727, 0.45454545, 0.63636364, 0.81818182, 1. ]])
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/424143.html
