如何用pandas将同ID对应的多个Board值合并为「值1/值2」格式
你可以直接使用pandas的分组聚合功能完成需求,核心是按ID列分组后,对同组的Board字段按原始顺序用/拼接即可。
import pandas as pd # 构造原始DataFrame示例,你可以替换为自己读取的数据源 data = { "ID": ["xxxxA", "xxxxB", "xxxxC", "yyyyA", "yyyyA", "yyyyB", "yyyyB", "yyyyC", "yyyyC"], "Board": ["Card80", "Card80", "Card80", "Card01", "Card02", "Card01", "Card02", "Card01", "Card02"] } df = pd.DataFrame(data) # 核心处理逻辑:按ID分组,同组Board值按顺序用/拼接 result_df = df.groupby("ID", as_index=False)["Board"].agg("/".join)
如果同一ID对应的Board值超过2个,上述方法也会自动按照原始数据出现的顺序依次拼接,符合第一个值/第二个值/第三个值...的规则。
内容的提问来源于stack exchange,提问作者MESSO dz
相关产品推荐
相关产品推荐

