gpt4 book ai didi

python - 如何在Python DataFrame中为按行过滤的单元格设置值?

转载 作者:行者123 更新时间:2023-12-01 07:22:03 25 4
gpt4 key购买 nike

import pandas as pd

df = pd.DataFrame([[1,2,3],[4,5,6],[7,8,9],[10,11,12]],columns=['A','B','C'])
df[df['B']%2 ==0]['C'] = 5

我期望此代码将 C 列的值更改为 5,其中 B 为偶数。但它不起作用。

它返回如下表

    A   B   C
0 1 2 3
1 4 5 6
2 7 8 9
3 10 11 12

我期待它回来

    A   B   C
0 1 2 5
1 4 5 6
2 7 8 5
3 10 11 12

最佳答案

如果需要更改DataFrame中的列值是必要的DataFrame.loc带有条件和列名称:

df.loc[df['B']%2 ==0, 'C'] = 5
print (df)
A B C
0 1 2 5
1 4 5 6
2 7 8 5
3 10 11 12

您的解决方案是链式索引的一个很好的例子 - docs .

关于python - 如何在Python DataFrame中为按行过滤的单元格设置值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57653822/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com