【发布时间】:2020-06-01 12:00:12
【问题描述】:
我有一个数据框:
df =
col1 col2 col3
1 2 3
1 4 6
3 7 2
我想编辑df,这样当col1的值小于2时,取col3的值。
所以我会得到:
new_df =
col1 col2 col3
3 2 3
6 4 6
3 7 2
我尝试使用assign 和df.loc,但没有成功。
最好的方法是什么?
【问题讨论】:
-
您可以使用
df['col1'] = df['col1'].mask(df['col1'] < 2,df['col3']),或df = df.assign(col1=df['col1'].mask(df['col1'] < 2,df['col3']))或类似np.where
标签: python pandas data-science data-munging