将数据框exex
设为
EXEX I J
1 702 2 3
2 3112 2 4
3 1360 2 5
4 702 3 2
5 221 3 5
6 591 3 11
7 3112 4 2
8 394 4 5
9 3416 4 11
10 1360 5 2
11 221 5 3
12 394 5 4
13 108 5 11
14 591 11 3
15 3416 11 4
16 108 11 5
是否有更有效的pandas方法将现有数据帧df
的值0更新为值exex.EXEX
,其中exex.I
字段是索引,{{1}列是字段吗?有没有办法通过指定名称而不是行索引来更新数据?这是因为如果名称字段发生变化,则行索引会有所不同,并可能导致错误的结果。
我明白了:
exex.J
答案 0 :(得分:3)
分配到df.values
df.values[exex.I.values - 1, exex.J.values - 1] = exex.EXEX.values
print(df.iloc[:5, :5])
1 2 3 4 5
1 0 0 0 0 0
2 0 0 702 3112 1360
3 0 702 0 0 221
4 0 3112 0 0 394
5 0 1360 221 394 0