簡體   English   中英

用一行替換條件將Pandas Dataframe中的值替換

[英]Replace a value in a Pandas Dataframe with condition with one line

如何在一行中執行此操作?

df.loc[(df['A'] < 0), 'A'] = 0
df.loc[(df['B'] < 0), 'B'] = 0

也許它存在一個Pandas函數,或者我可以在該函數中添加參數。

DataFrame.clip_lowerDataFrame.clip_lower集一起使用:

df = pd.DataFrame({'A':[-1,20,24], 'B':[-1,2,-3], 'C':[-1,-2,-3]})
print (df)
    A  B  C
0  -1 -1 -1
1  20  2 -2
2  24 -3 -3

df[['A','B']] = df[['A','B']].clip_lower(0)
print (df)
    A  B  C
0   0  0 -1
1  20  2 -2
2  24  0 -3

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM