gpt4 book ai didi

pandas - 将按类别分类汇总的行添加到我的数据框

转载 作者:行者123 更新时间:2023-12-02 00:17:15 26 4
gpt4 key购买 nike

我使用 groupby 创建了一个新的聚合数据框,但在每个类别下添加小计行时遇到问题。

我曾尝试使用 pd.groupby 和 pivottable 并更改索引,但我无法按照我的意愿来表示数据。

  • 为每个“客户”创建“USD_Balance”小计,但将其添加为一列:
df_balance['Subtotal'] = df_balance.groupby('Client')['USD_Balance'].transform('sum')
  • 创建一个 groupby 并与我的原始表合并得到相同的结果。
+----------+-------------+------------+
|CLient ID | USD_Balance | Subtotal |
+----------+---------+------------+----
| 1 | 2 | 6 |
| 1 | 2 | 6 |
| 1 | 2 | 6 |
+----------+-------------+------------+
  • 我希望如何显示我的数据:
|---------------------|------------------|
| Client ID | USD_Balance |
|---------------------|------------------|
| 1 | 2 |
|---------------------|------------------|
| 1 | 2 |
|---------------------|------------------|
| 1 | 2 |
|---------------------|------------------|
| SubTotal | 6 |
|---------------------|------------------|

我想添加一个小计行,每个客户 ID 组都有相应的汇总。

提前感谢您提供有关如何像这样呈现我的数据的任何指示!

最佳答案

您可以使用 groupby 并访问每个组并添加一个小计行:

dfs = []

for _, d in df.groupby('CLient ID', as_index=False):
d.loc['Total', 'USD_Balance'] = df['USD_Balance'].sum()
dfs.append(d)

df_final = pd.concat(dfs, ignore_index=True)

   CLient ID  USD_Balance
0 1.0 2.0
1 1.0 2.0
2 1.0 2.0
3 NaN 6.0

关于pandas - 将按类别分类汇总的行添加到我的数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56654481/

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