我想將 numpy 陣列中的值乘以 Pandas 資料幀中的一列,其中 numpy 陣列的索引與 Pandas 資料幀中的值相匹配。
例如,我有一個資料框和一個像這樣的 numpy 陣列。
data = {'v_index': [0, 1, 2, 3, 4, 0, 4, 3], 'values': [5, 5, 10, 10, 20,20,10,10]}
pd.DataFrame(data)
v_index values
0 0 5
1 1 5
2 2 10
3 3 10
4 4 20
5 0 20
6 4 10
7 3 10
np.array([1,3,5,7,9])
現在我想將 numpy 陣列的索引與“v_index”列中的值相匹配,并將它們的值相乘。我想要的輸出看起來像這樣。
v_index values
0 0 5 -> 5*1 = 5
1 1 5 -> 5*3 = 15
2 2 10 -> 10*5 = 50
3 3 10 -> 10*7 = 70
4 4 20 -> 20*9 = 180
5 0 20 -> 20*1 = 20
6 4 10 -> 10*9 =90
7 3 10 -> 10*7 =70
有人可以幫我解決這個問題嗎?
uj5u.com熱心網友回復:
嘗試
df['values'] *= arr[df['v_index']]
輸出:
v_index values
0 0 5
1 1 15
2 2 50
3 3 70
4 4 180
5 0 20
6 4 90
7 3 70
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/331180.html
