我遇到了一个问题:
我有一个包含许多行和列的表,如下所示(只是更多的行和列):
比萨饼消费:
df=
+------------------------------------------------------+
| Name Day 1 | Day 2 | Day 3 | Day 4 |Day 5|
+------------------------------------------------------+
| Michelangelo | 1 | 5 | 2 | 1 | 5 |
| Michelangelo | 4 | 2 | 3 | 1 | 5 |
| Donatello | 2 | 1 | 1 | 8 | 2 |
| Leonardo | 3 | 2 | 4 | 2 | 1 |
| Michelangelo | 3 | 1 | 2 | 1 | 5 |
| Raphael | 2 | 2 | 3 | 1 | 3 |
| Michelangelo | 4 | 3 | 1 | 1 | 5 |
+------------------------------------------------------+
我想得到一张表,上面有每只海龟每天的总数,如下所示:
df_总计=
+-------------------------------------------------------+
| Name Day 1 | Day 2 | Day 3 | Day 4 | Day 5|
+-------------------------------------------------------+
| Michelangelo | 13 | 11 | 8 | 4 | 20 |
| Donatello | 2 | 1 | 1 | 8 | 2 |
| Leonardo | 3 | 2 | 4 | 2 | 1 |
| Raphael | 2 | 2 | 3 | 1 | 3 |
+-------------------------------------------------------+
由于我不希望这些名称成为索引,我尝试了(除其他外):
df_total = df.groupby(['Name'], axis = 0).sum().reset_index()
我得到了一个汇总行,选择中的每个字段在该行的每列中汇总成一个巨大的总和。那就是米开朗基罗每天56个比萨饼
谢谢你看
试试这个,
df.groupby(['Name'], as_index=False).sum()
只需使用
pd.DataFrame.groupby.sum
而不使用参数axis=0
(按行):输出:
和IIUC,您可以使用
pd.DataFrame.sum
获得每行(axis=1
)的总和:输出:
相关问题 更多 >
编程相关推荐