首页 > 解决方案 > 如何读取 DataFrame 中的特定单元格并写入其中

问题描述

我有以下数据框:

df:
   00  01  02  03  04  05  06  07
0   0   0   0   0   0   0   0   0
1   0   0   0   0   0   0   0   0
2   0   0   0   0   0   0   0   0
3   0   0   0   0   0   0   0   0
4   0   0   0   0   0   0   0   0
5   0   0   0   0   0   0   0   0
6   0   0   0   0   0   0   0   0
7   0   0   0   0   0   0   0   0

我也有很多 INT-Pairs - 代表这个 DF 中的特定行和列

例如:

3,5---
6,2---
3,1--- 
2,3---
3,1---

匹配的数量应计入 DataFrame,因此在读取所有对后,DF 应如下所示:

df:
   00  01  02  03  04  05  06  07
0   0   0   0   0   0   0   0   0
1   0   0   0   2   0   0   0   0
2   0   0   0   0   0   0   1   0
3   0   0   1   0   0   0   0   0
4   0   0   0   0   0   0   0   0
5   0   0   0   1   0   0   0   0
6   0   0   0   0   0   0   0   0
7   0   0   0   0   0   0   0   0

你知道怎么做吗?

标签: pythonpandasdataframe

解决方案


首先,您索引的方式是向后的,row然后您想要column

for loopiloc

pairs = [(5, 3), (2, 6), (1, 3), (3, 2), (1, 3)]

for pair in pairs:
    df.iloc[pair] += 1

# Result

   00  01  02  03  04  05  06  07
0   0   0   0   0   0   0   0   0
1   0   0   0   2   0   0   0   0
2   0   0   0   0   0   0   1   0
3   0   0   1   0   0   0   0   0
4   0   0   0   0   0   0   0   0
5   0   0   0   1   0   0   0   0
6   0   0   0   0   0   0   0   0
7   0   0   0   0   0   0   0   0

推荐阅读