让我们举例说明以下数据框:
a b d e
0 1 2 5 8
1 2 3 9 14
2 3 4 1 8
我想将d和e列加在一起,然后将这些数字加在一起。结果 sum = 45。我无法找到一种简单的方法。
答案 0 :(得分:2)
传递感兴趣列的列表以从您的df中进行子选择,然后调用属性.values
以返回np数组,然后您可以使用np.sum
来获得您想要的答案:
In [49]:
np.sum(df[['d','e']].values)
Out[49]:
45
或者对于纯粹的熊猫来说,请拨打sum
两次:
In [50]:
df[['d','e']].sum().sum()
Out[50]:
45
答案 1 :(得分:0)
如果您有这样的数据集:
matrix = [
... [1, 2, 3, 4],
... [5, 6, 7, 8],
... [9, 10, 11, 12],
... ]
然后
>>> list(zip(*matrix))
给你
[(1, 5, 9), (2, 6, 10), (3, 7, 11), (4, 8, 12)]
反过来可以用索引求和。
它在Python教程中写得很好: https://docs.python.org/3/tutorial/datastructures.html#nested-list-comprehensions