【发布时间】:2016-07-15 20:00:56
【问题描述】:
我有一个包含 600 列 (df1) 的 pandas 数据框,我想将每列的值按 6 组相加。换句话说,我想创建一个包含 100 列的新数据框 (df2),每列column 是输入数据框中 6 列的总和。例如,df2 中第一列的每一行将是 df1 中前六列的总和(保持行分开)。我使用的数据框也有每个列名的字符串值(这里只用单个字母表示)
对于 df1:
A B C D E F G H I J ...
0 9 6 3 4 7 7 6 0 5 2 ...
1 8 0 6 6 0 5 6 5 8 7 ...
2 9 0 7 2 9 5 3 2 1 7 ...
3 5 2 9 6 7 0 3 8 5 0 ...
4 7 1 0 7 4 0 2 0 5 8 ...
5 0 9 2 0 4 9 5 7 6 2 ...
我希望 df2 的第一列是:
A G ...
0 36
1 25
2 32
3 29
4 19
5 24
其中每一行是该行前六列的总和。下一列将是接下来六列的总和,依此类推,列名是每组 6 列中第一列的名称。(第一列名称是第一列,第二列名称是第七列列等)
我尝试使用列索引对正确的列求和,但在寻找将总和存储在具有相关名称的新列中的方法时遇到问题。
有没有一种 Python 的方式来创建这些列,并将列名从 df 拉到 df2 中?
【问题讨论】:
标签: python pandas dataframe sum