如何将同车牌的多行分散信息合并至单行?
如何将同车牌的多行分散信息合并至单行?
哈哈,我懂你的需求!就是同一车牌的信息被拆成了好几行(比如你示例里的5、6、7都各占一行,但都是同一个车牌的),想把这些零散的内容都归到同一车牌的那一行里,让数据看起来整整齐齐的对吧?我给你分享几个不同场景下好用的办法:
先明确你的需求场景
原始状态:同一个车牌对应多行数据,每行只带一个相关数值(比如5、6、7),车牌列重复出现
期望结果:每个车牌只保留一行,对应的所有数值(5、6、7)都合并到该行的对应位置里
方法一:Excel Power Query(小白友好,不用写复杂公式)
这是我最推荐普通办公用户用的办法,可视化操作,不容易出错:
- 选中你的数据区域,点顶部菜单栏的「数据」→「从表格/区域」,弹出的框里确认「我的表格有标题」,点确定进入Power Query编辑器。
- 找到「车牌」列,点击「转换」选项卡的「分组依据」。
- 在分组设置里:
- 分组依据选「车牌」
- 新列名随便取,比如「合并信息」
- 操作选「所有行」,然后点确定
- 这时你会看到「合并信息」列都是表格,点列名旁边的小箭头,选「提取值」,分隔符选你想要的(比如逗号、空格,或者直接空着),确定后就把同一车牌的所有数值合并成一串了。
- 最后点「关闭并上载」,合并好的数据就会出现在新工作表里啦,完美匹配你想要的结果。
方法二:Excel公式(适合小数据量快速处理)
如果数据不多,不想进Power Query,用公式也能搞定:
假设车牌在A列,要合并的数值在B列,在C2单元格输入:=TEXTJOIN(", ", TRUE, IF($A$2:$A$100=A2, $B$2:$B$100, ""))
- 如果你用的是Excel 365/2021,直接按回车就行;老版本要按「Ctrl+Shift+Enter」触发数组公式
- 下拉填充公式后,C列就会显示每个车牌对应的所有合并数值,之后你可以选中A、C列,用「数据」→「删除重复项」,只保留每个车牌的唯一行就OK了。
方法三:Python Pandas(大数据量首选)
如果数据量特别大,手动处理太费劲,用代码跑最快:
import pandas as pd # 读取你的数据,支持csv或Excel文件 df = pd.read_excel("你的数据文件.xlsx") # 读csv就用pd.read_csv("xxx.csv") # 按车牌分组,把数值列用逗号连接起来,你可以把"数值列"换成你实际的列名 merged_df = df.groupby("车牌")["数值列"].apply(lambda x: ", ".join(x.astype(str))).reset_index() # 把合并好的数据保存成新文件 merged_df.to_excel("合并后的数据.xlsx", index=False)
运行完代码,你就能得到每个车牌一行、所有数值合并好的结果啦。
备注:内容来源于stack exchange,提问作者Jesse van de Stadt
相关产品推荐
相关产品推荐

