Python 利用pandas多列分组多列求和
一、需求描述: 如下Excel数据 需要按 ASIN、SKU、品名、店铺 对 1-31 的列进行分组求和,实际数据是有很多重复的SKU数据
二、代码实现
import pandas as pd # 从Excel获取数据 df = pd.read_excel(r'C:\\Users\\liuchunlin2\\Desktop\\预警信息汇总.xlsx', sheet_name='Sheet1') """ 使用pandas库中的read_excel()函数从指定的Excel文件中读取数据。 r'C:\\Users\\liuchunlin2\\Desktop\\预警信息汇总.xlsx'为文件路径,需根据实际情况修改。 sheet_name='Sheet1'表示读取Excel文件中名为'Sheet1'的工作表。 读取的数据存储在一个DataFrame对象df中。 """ # 列数据为空的用0填充 df = df.fillna(0) """ 使用fillna()函数将数据框df中的空值(NaN)替换为0,以确保数据框中没有空值。 """ my_list = list(range(1, 32)) """ 使用list()函数和range()函数生成一个包含1到31的整数列表my_list。 这里生成的整数列表是为了后续分组聚合操作使用。 """ # 打印列表 print(my_list) """ 使用print()函数打印my_list列表,便于查看生成的整数列表。 """ # 对数据进行分组聚合操作 grouped_df = df.groupby(['ASIN', 'SKU', '品名', '店铺'])[my_list].sum().reset_index() """ 使用groupby()函数对数据框df进行分组聚合操作。 ['ASIN', 'SKU', '品名', '店铺']是按照这些列进行分组。 [my_list]表示对整数列表中的列进行求和。 sum()表示对这些列进行求和操作。 reset_index()用于重置索引,使分组后的数据重新建立索引。 分组聚合操作后的结果存储在grouped_df数据框中。 """ # 将处理后的数据保存到Excel文件中 grouped_df.to_excel(r'C:\\Users\\liuchunlin2\\Desktop\\预警信息汇总2.xlsx', index=False) """ 使用to_excel()函数将处理后的数据保存到Excel文件中。 r'C:\\Users\\liuchunlin2\\Desktop\\预警信息汇总2.xlsx'为保存的路径和文件名,需根据实际情况修改。 设置index=False表示不保存索引。 """ # 打印处理后的数据 print(grouped_df) """ 使用print()函数打印处理后的数据,便于查看分组聚合操作的结果。 """
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· AI 智能体引爆开源社区「GitHub 热点速览」