Skip to main content
 首页 » 编程设计

python之将总和行添加到数据框中的特定列

2025年05月04日18langtianya

我有一个数据框,

df = pd.DataFrame([{'project': 123456, 'date': '08/07/2019', 'total': 123,  
                    'count': 12}, {'project': 123457, 'date': '08/07/2019',  
                    'total': 124, 'count': 13}, {'project': 123458, 'date':  
                    '08/07/2019', 'total': 125, 'count': 14}]) 

我想在 total 和 count 列的底部添加一个总计行。我知道我能做到

df.loc['Total'] = df.sum(numeric_only=True) 

但我的 project 列是数字,我不想要在底行显示 Total 一词,只希望这两列的总和.有什么方法可以删除这个词并确保只有这两列相加吗?

请您参考如下方法:

我相信每个项目都有一个唯一的 ID,所以我不知道这是否是一个有效的解决方案。由于问题没有限制,我提出以下建议,通过使用列项目作为索引,您可以轻松添加更多项目 ID 及其信息,最后一行将对它们进行汇总!

import pandas as pd 
df = pd.DataFrame([{'project': 123456, 'date': '08/07/2019', 'total': 123,  
                    'count': 12}, {'project': 123457, 'date': '08/07/2019',  
                    'total': 124, 'count': 13}, {'project': 123458, 'date':  
                    '08/07/2019', 'total': 125, 'count': 14}]) 
df1 = df.set_index('project') 
df1.loc['Total'] = df1.sum(numeric_only=True) 
print(df1) 

我得到了这个结果,这就是我相信你想要的:

               date  total  count 
project 
123456   08/07/2019  123.0   12.0 
123457   08/07/2019  124.0   13.0 
123458   08/07/2019  125.0   14.0 
Total           NaN  372.0   39.0