基于列去重并将另一列唯一值拼接至新列的DataFrame处理需求
解决DataFrame重复值合并问题
- 你用
df.drop_duplicates(subset='ColumnB', keep="last")的方式只能保留单行数据,无法合并同一ColumnB对应的所有ColumnA值,正确做法是通过groupby分组后聚合拼接:
import pandas as pd # 构造原始DataFrame df = pd.DataFrame({ 'ColumnA': ['John', 'Jorge'], 'ColumnB': [2, 2] }) # 按ColumnB分组,将对应ColumnA的值用分号加空格拼接 result_df = df.groupby('ColumnB')['ColumnA'].agg('; '.join).reset_index()
- 执行后得到的结果如下:
| ColumnA | ColumnB |
|---|---|
| John; Jorge | 2 |
内容的提问来源于stack exchange,提问作者Jamie Jones
相关产品推荐
相关产品推荐

