先索引重置,然后新增合计行。
时间: 2024-10-21 17:07:52 浏览: 22
在Python中pandas.DataFrame重置索引名称的实例
当你想要先对DataFrame进行操作并添加新的合计行,比如计算某个列的总和,通常你会先使用`reset_index()`函数重置索引,以便可以按照新生成的索引添加一行或多行。接着,你可以通过`agg()`或者`groupby().sum()`等方法对特定列求和,得到汇总值。
假设你需要在`df_result` DataFrame的基础上计算总借方余额和总贷方余额,你可以这样做:
```python
# 对所有借方余额求和
total_debit = df_result[df_result['classification'] == '借方余额']['period_end_debit'].sum()
# 对所有贷方余额求和
total_credit = df_result[df_result['classification'] == '贷方余额']['period_end_credit'].sum()
# 创建一个新的DataFrame行,表示总计
new_row = pd.DataFrame({'classification': ['总计'], 'period_end_debit': total_debit, 'period_end_credit': total_credit})
# 合并原数据和合计行
final_df = df_result.append(new_row, ignore_index=True)
# 或者,如果你想保留原有的索引,可以用这种方法
final_df = df_result.copy()
final_df.loc[len(final_df)] = new_row
```
这里的新行会被添加到DataFrame的底部,如果需要放在顶部,可以考虑`insert()`方法替换`append()`。
阅读全文