为pandas DataFrame列返回最大值零或值

发布于 2021-01-29 15:27:26

我想将熊猫DataFrame列中的负值替换为零。

有没有更简洁的方法来构造此表达式?

df['value'][df['value'] < 0] = 0
关注者
0
被浏览
137
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    这是规范的操作方式,虽然不一定更简洁,但更灵活(因为您可以将其应用于任意列)

    In [39]: df = DataFrame(randn(5,1),columns=['value'])
    
    In [40]: df
    Out[40]: 
          value
    0  0.092232
    1 -0.472784
    2 -1.857964
    3 -0.014385
    4  0.301531
    
    In [41]: df.loc[df['value']<0,'value'] = 0
    
    In [42]: df
    Out[42]: 
          value
    0  0.092232
    1  0.000000
    2  0.000000
    3  0.000000
    4  0.301531
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看