【发布时间】:2013-11-30 17:41:14
【问题描述】:
data = {'name' : ['bill', 'joe', 'steve'],
'test1' : [85, 75, 85],
'test2' : [35, 45, 83],
'test3' : [51, 61, 45]}
frame = pd.DataFrame(data)
我想添加一个显示每行最大值的新列。
想要的输出:
name test1 test2 test3 HighScore
bill 75 75 85 85
joe 35 45 83 83
steve 51 61 45 61
有时
frame['HighScore'] = max(data['test1'], data['test2'], data['test3'])
有效,但大多数时候会出现此错误:
ValueError:具有多个元素的数组的真值不明确。使用 a.any() 或 a.all()
为什么它有时只起作用?还有其他方法吗?
【问题讨论】:
-
更快的解决方案以及此特定操作的性能比较可以在this answer中找到。
标签: python python-2.7 pandas max