Python 我如何总结专门使用熊猫作为以下数据的3列&;创建新列以标记它是否为';s大于0或等于0
对于下面的数据,我想创建列,如果A+B+C之和=0,那么我想标记为“NoCommit” 如果大于0,我想标记“提交”Python 我如何总结专门使用熊猫作为以下数据的3列&;创建新列以标记它是否为';s大于0或等于0,python,pandas,numpy,Python,Pandas,Numpy,对于下面的数据,我想创建列,如果A+B+C之和=0,那么我想标记为“NoCommit” 如果大于0,我想标记“提交” revno author msg A B C 3030 rohit modified 0 1 0 3031 rohit Statistica
revno author msg A B C
3030 rohit modified 0 1 0
3031 rohit Statistical Report changes Done 0 2 0
3032 sandeep OTPIntegration flow changed 0 0 0
3033 sandeep Captcha code Integration Done. 0 0 0
与总和一起使用
:
df['new'] = np.where(df[['A','B','C']].sum(axis=1).eq(0),'NoCommit','Commit')
或:
编辑:
如果列不是数字,请使用:
df['new'] = np.where(df[['A','B','C']].astype(float).sum(axis=1).eq(0),'NoCommit','Commit')
天真的方法:
df=pd.DataFrame(数据,列=['A','B','C']
df['Commit']=df['NoCommit']=None
df.loc[:,['Commit','NoCommit']=\
[(1,0)如果i>0,则df[['A','B','C']]中i的其他(0,1)项。求和(轴=1)]
获取此错误:KeyError:'new'@Aditya-不理解,没有选择new
抱歉?我如何修复它?@Aditya-不理解,new
列是否存在?不,new列不存在
df['new'] = np.where(df[['A','B','C']].astype(float).sum(axis=1).eq(0),'NoCommit','Commit')