使用Pandas合并CSV文件重复行并拼接Category属性值
合并CSV重复行并拼接Category字段
我有一份CSV数据,同一实体对应多条重复记录,仅Category字段存在差异。需要合并这些重复行,将该实体对应的所有Category值拼接为单个逗号分隔的字符串(例如沃尔玛的Category最终应为"Retail, Dowjones, SuperMarketChains")。
可行的解决方案代码
# 将同一实体的Category收集为列表 df4 = df4.groupby(["ID azienda","Name","Company code", "Marketcap", "Share price", "Earnings", "Revenue", "Shares", "Employees"])['Category'].agg(list).reset_index() # 若需直接转为逗号分隔的字符串,可修改为: # df4 = df4.groupby(["ID azienda","Name","Company code", "Marketcap", "Share price", "Earnings", "Revenue", "Shares", "Employees"])['Category'].agg(lambda x: ', '.join(x)).reset_index()
代码说明
groupby():指定所有能唯一标识实体的字段作为分组依据,确保同一实体的所有行被归为一组agg(list):将每组内的所有Category值收集为一个列表;使用lambda x: ', '.join(x)可直接拼接成逗号分隔的字符串reset_index():将分组后的结果恢复为标准DataFrame结构,避免分组字段转为索引
内容的提问来源于stack exchange,提问作者Rodolfo
相关产品推荐
相关产品推荐

