You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Pandas DataFrame中合并行?尝试groupby JVNo未达预期

解决方案

问题说明

我拥有如下数据集:
输入数据集

期望得到的结果为:
预期结果

尝试使用groupby JVNo处理但未得到预期结果,该如何实现?

实现代码(基于Pandas)

问题出在仅用groupby未针对不同列设置对应聚合逻辑,以下是可行的实现代码:

import pandas as pd

# 读取数据集(根据实际存储格式调整,Excel文件用pd.read_excel)
df = pd.read_csv("your_dataset.csv")

# 定义各列的聚合规则
agg_rules = {
    "OrderNo": lambda x: ", ".join(x.unique()),  # 合并去重后的关联订单号
    "Desc": "first",  # 取同JVNo下第一个描述(默认同JVNo的描述一致)
    "Qty": "sum",  # 对同JVNo下的数量求和
    "UOM": "first",  # 取同JVNo下第一个单位(默认同JVNo的单位一致)
    "Plant": "first",
    "Material": "first"
}

# 按JVNo分组并执行聚合
result_df = df.groupby("JVNo", as_index=False).agg(agg_rules)

# 查看或保存结果
print(result_df)
# result_df.to_csv("result.csv", index=False)

关键说明

  • 针对Qty列需要求和,合并同JVNo下的所有数量
  • OrderNo列需要合并该JVNo关联的所有唯一订单号
  • Desc、UOM等列因同JVNo下值一致,直接取第一个值即可

内容的提问来源于stack exchange,提问作者Brinda Marshall

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 11:40:48