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

Pandas按ID合并Excel行:DataFrame同ID行合并问题求助

解决DataFrame按id合并重复行的问题

看你的需求是要把相同id的行合并成一行,而且从预期结果来看是保留第一行的post内容对吧?你之前试的groupby写法踩了个小坑,我来帮你修正下。

问题出在哪?

你之前用groupby(['id', 'post'])的话,因为两行的post内容不一样,会被当成两个独立分组,哪怕加了.first()也没法合并成一行——毕竟分组键里包含了不一样的post,自然分不到一组里。

正确的解决方法

方法1:保留每个id的第一行数据(匹配你的预期结果)

直接按id分组,然后取每组的第一行就好,记得加上as_index=False让id保持为普通列:

df = df.groupby('id', as_index=False).first()

执行后就会得到你想要的结果:相同id的行合并,保留第一行的post和date。

方法2:如果需要拼接同一id下的所有post内容(可选)

要是你其实想把两段post文本合并成一个,而不是只保留第一段,可以用agg方法来拼接:

df = df.groupby(['id', 'date'], as_index=False).agg({'post': ' '.join})

这样相同id和date下的post会被用空格连起来,适合需要整合文本内容的场景。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 06:36:50