Skip to main content
 首页 » 编程设计

python之如何在 python 中替换 pandas 中的整数值

2025年05月04日16cmt

我有一个 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