熊猫IF测试创建新列

Cyber​​Cube

任何想法我如何可以基于一个数据帧中的3列的测试创建列C?

到目前为止,我有

df.loc[df['Negative'] > df['Neutral'] and df['Negative'] > df['Positive'], 
'C'] = 'Bad'

这给了我

ValueError:系列的真值不明确

耶斯列尔

添加()并改为and使用按位和- &

df.loc[(df['Negative'] > df['Neutral']) & (df['Negative'] > df['Positive']), 'C'] = 'Bad'

另外,如果需要if-else使用numpy.where

mask  = (df['Negative'] > df['Neutral']) & (df['Negative'] > df['Positive'])
df['C'] = np.where(mask, 'Bad', 'Good')

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章