python数据框架中带条件的for循环

2024-10-01 04:56:10 发布

您现在位置:Python中文网/ 问答频道 /正文

如果值(int)大于0,我正在尝试向整列添加1。我现在使用的代码是这样的:`

for coldcloudy in final.coldcloudy:
    final.loc[final['coldcloudy'] > 0,coldcloudy] +=1

但是,我不断得到一个“KeyError:0”。本质上,我希望代码在特定列中逐行执行,如果整数为零,则加1。对于由1添加的值,我将添加到另一列。有人能帮忙吗?你知道吗


Tags: 代码infor整数locfinalintkeyerror
1条回答
网友
1楼 · 发布于 2024-10-01 04:56:10

您不需要for循环:

final = pd.DataFrame({'coldcloudy':np.random.choice([0,1],20)})

final.loc[final.coldcloudy > 0, 'coldcloudy'] += 1

print(final)

输出:

    coldcloudy
0            2
1            2
2            0
3            0
4            2
5            2
6            0
7            2
8            0
9            0
10           2
11           2
12           0
13           2
14           2
15           0
16           2
17           0
18           2
19           2

相关问题 更多 >