按指定条件汇总行值并生成新Excel文件的实现方法
按Article汇总Stock并生成文件的实现方案
核心实现步骤
- 使用Pandas的
groupby按Article字段分组,对Stock列求和汇总 - 按需保留其他字段(如
Price、Color),处理逻辑根据实际数据情况调整 - 将汇总结果导出为CSV/Excel等格式文件
完整代码示例
import pandas as pd # 初始化示例DataFrame df = pd.DataFrame({ 'Article': ['Shoe', 'Shirt', 'Shoe', 'Shoe', 'Hat', 'Hoodie'], 'Price': ['7$', '11$', '7$', '7$', '2$', '3$'], 'Stock': [1100, 1463, 500, 400, 60, 18], 'Color': ['white', 'blue', 'white', 'white', 'green', 'black'] }) # 分组汇总:按Article求和Stock,保留Price/Color(取每组首个值,若需合并颜色可修改逻辑) summary_df = df.groupby('Article').agg( Price=('Price', 'first'), Total_Stock=('Stock', 'sum'), Color=('Color', 'first') # 若同Article有多种颜色,可替换为:Color=('Color', lambda x: ', '.join(x.unique())) ).reset_index() # 导出为CSV文件(无需额外依赖) summary_df.to_csv('article_stock_summary.csv', index=False) # 如需导出Excel,先安装openpyxl(pip install openpyxl)后执行: # summary_df.to_excel('article_stock_summary.xlsx', index=False, engine='openpyxl')
关键说明
groupby('Article'):以商品名称为分组依据agg():自定义每个字段的聚合规则,Stock用sum()求和,Price/Color用first()取分组内第一个值(适合同Article属性一致的场景)reset_index():将分组索引转换为普通列,保证导出文件结构清晰to_csv()/to_excel():指定导出路径,index=False避免生成多余的索引列
内容的提问来源于stack exchange,提问作者FinneX
相关产品推荐
相关产品推荐

