猿问

根据条件替换熊猫数据框列中的数据,如果条件不满足则跳过

我有一个带有一列数字的数据框。如果数字小于 0,我想在该数字上加上 3.14。如果没有,我想跳过该数字并保持原样。我正在使用 Pandas 和 numpy,但无法找到如何跳过不满足条件的数字,同时将它们原样留在数据框中。

尝试此操作时:

df['rad'].apply(lambda x: [y if y>=0 else y+3.14 for y in x])

我得到 TypeError: 'int' object is not iterable

即使“rad”列中的数字都是 int64。


神不在的星期二
浏览 174回答 1
1回答

ABOUTYOU

那是 np.wherenp.where(df['rad']>0,df['rad'],df['rad']+3.14)
随时随地看视频慕课网APP

相关分类

Python
我要回答