gpt4 book ai didi

python - 如何每第 4 行将列总数附加到 Pandas 数据框?

转载 作者:行者123 更新时间:2023-12-04 02:27:38 24 4
gpt4 key购买 nike

我有以下数据框,其中包含 A、B 和 C 列的每周数字:

week  A B C
0 1 0 0
1 1 0 1
2 0 1 0
3 1 1 1
4 1 0 0
5 0 0 1
6 0 1 0
7 1 1 1
8 1 0 0
9 0 0 1
10 0 1 0
11 1 1 1
并且我想在数据框中附加一行,其中包含每列的每月总计(所以前 4 周一起),想要的结果是这样的:
week   A B C
0 1 0 0
1 1 0 1
2 0 1 0
3 1 1 1
total 3 2 2
4 1 0 0
5 0 0 1
6 1 1 0
7 2 1 0
total 4 2 1
8 1 0 0
9 0 0 1
10 0 0 0
11 1 0 1
total 2 0 2
我用过了
df.groupby(df.index // 4).sum(numeric_only=True, axis=0)
获取每月数字,但我不知道如何将其附加到 df 中。
有任何想法吗?谢谢

最佳答案

pd.concat遍历 groupby 对象允许我们将总行附加到每个子数据帧。通过字典理解/pd.concat我们很方便地得到 month添加为索引中的一个级别以消除 'total' 的歧义索引中的标识符。

pd.concat({
m: d.append(d.sum().rename('total'))
for m, d in df.groupby(df.index // 4)
}, names=['month'])

A B C
month week
0 0 1 0 0
1 1 0 1
2 0 1 0
3 1 1 1
total 3 2 2
1 4 1 0 0
5 0 0 1
6 0 1 0
7 1 1 1
total 2 2 2
2 8 1 0 0
9 0 0 1
10 0 1 0
11 1 1 1
total 2 2 2

关于python - 如何每第 4 行将列总数附加到 Pandas 数据框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66389603/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com