根据多个值检查和更新列

时间:2018-08-10 06:23:49

标签: python python-3.x dataframe

我有一个数据框df,其中有3列

id code  status   
1  US    Y      
2  IN    Y
3  UK    Y
4  CN    Y
5  KR    Y 

我想将列状态更新为 N ,其中code not in ("US", "UK")

我尝试使用它但失败了

df.loc[df['code'] not in ("US","UK"),["status"]] ='N'

2 个答案:

答案 0 :(得分:1)

您需要:

stackblitz

答案 1 :(得分:1)

df['status'] = df.apply(lambda x: 'N' if x[1] not in ['US','UK'] else x[2],axis=1)