南京的天
南京的天
关注数: 151
粉丝数: 36
发帖数: 2,298
关注贴吧数: 75
请教大家一个pandas多条件判断新增列的问题,先谢谢各位! 现在有一个dataframe其中A、B、C是子公司,D、E是分公司, 现在要新增一列‘子公司规模’,条件是:子公司而且销售额大于等于1000 ,达到如下效果我的代码是: import pandas as pd zgs=['A','B','C'] df=pd.DataFrame({'单位':['A','B','C','D','E'],'销售额':[1200,800,1500,900,600]}) df['判断']=(df.单位.apply(lambda x:1 if x in zgs else 0))*(df.销售额.apply(lambda x:1 if x>=1000 else 0)) df['子公司规模']=df.判断.apply(lambda x:'大型子公司' if x==1 else '') del df['判断'] df 我的方法是新增了辅助列 '判断', df['判断']=(df.单位.apply(lambda x:1 if x in zgs else 0))*(df.销售额.apply(lambda x:1 if x>=1000 else 0)) df['子公司规模']=df.判断.apply(lambda x:'大型子公司' if x==1 else '') 感觉这个方法比较繁琐, 想请教大家是否有其他简便方法吗? 先谢谢大家了!
1
下一页