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

如何使用pandas实现医院名称去重并合并对应行数据?

用Pandas实现医院名称去重并合并对应行数据

核心思路

通过groupby按医院名称分组,对每组的其他列数据执行合并(或对应聚合操作),最后将分组结果转回常规DataFrame并保存。

代码实现

  1. 导入依赖并读取数据
import pandas as pd

# 读取输入Excel文件,替换为你的文件路径
df = pd.read_excel("输入文件.xlsx")
  1. 分组合并数据
    根据你的实际数据结构选择对应方式:
  • 通用文本列合并(去重+过滤空值):适用于所有非医院名称列都是文本类的场景
# 按Hospital Name分组,将其他列的非空唯一值用逗号分隔合并
merged_df = df.groupby("Hospital Name").agg(
    lambda x: ", ".join(x.dropna().unique())
).reset_index()
  • 指定列自定义聚合:针对混合类型列(如数值列需求和、文本列需合并)
# 定义各列的聚合规则,根据你的实际列名调整
agg_rules = {
    "科室": lambda x: ", ".join(x.dropna().unique()),  # 合并科室并去重
    "月就诊量": "sum",  # 数值列求和
    "联系电话": lambda x: ", ".join(x.dropna().unique())  # 合并联系电话
}

merged_df = df.groupby("Hospital Name").agg(agg_rules).reset_index()
  1. 保存结果
# 将处理后的数据保存为新Excel文件,不保留索引列
merged_df.to_excel("输出文件.xlsx", index=False)

细节调整

  • 不需要合并时去重:去掉代码中的unique()
  • 需要保留空值:去掉dropna()
  • 自定义分隔符:将", "替换为"; "等你需要的符号

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.19 18:52:36