我有一个 pandas 数据框,如下所示。
a b c d e
a 0 1 0 1 1
b 1 0 1 6 3
c 0 1 0 1 2
d 5 1 1 0 8
e 1 3 2 8 0
我想替换低于 6 <=5
的值为 0。所以我的输出应该如下所示。
a b c d e
a 0 0 0 0 0
b 0 0 0 6 0
c 0 0 0 0 0
d 0 0 0 0 8
e 0 0 0 8 0
我正在尝试使用以下代码来执行此操作。
df['a'].replace([1, 2, 3, 4, 5], 0)
df['b'].replace([1, 2, 3, 4, 5], 0)
df['c'].replace([1, 2, 3, 4, 5], 0)
df['d'].replace([1, 2, 3, 4, 5], 0)
df['e'].replace([1, 2, 3, 4, 5], 0)
但是,我确信在 pandas 中有一种更简单的方法可以完成这项任务。
如果需要,我很乐意提供更多详细信息。
最佳答案
使用掩码
df=df.mask(df<=5,0)
df
Out[380]:
a b c d e
a 0 0 0 0 0
b 0 0 0 6 0
c 0 0 0 0 0
d 0 0 0 0 8
e 0 0 0 8 0
关于python - 如何在 python 中替换 pandas 中的整数值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54758019/