如何在Pandas中合并DataFrame普通列与集合列?
问题描述
现有DataFrame df 数据如下:
item Space rem_spc nxt_item Pineapple 0.5 0.5 {Mango, Grape}
需要将item列与nxt_item列合并为新列com_item,预期结果如下:
item Space rem_spc nxt_item com_item Pineapple 0.5 0.5 {Mango, Grape} Pineapple,Mango,Grape
解决方案
由于nxt_item列的元素是集合类型,可通过以下代码实现合并:
# 合并item与nxt_item列生成com_item df['com_item'] = df['item'] + ',' + df['nxt_item'].apply(lambda x: ','.join(x))
代码说明
- 先用
apply(lambda x: ','.join(x))将集合类型的nxt_item元素转换为逗号分隔的字符串 - 再将
item列的字符串与转换后的nxt_item字符串用逗号拼接,得到目标列com_item
内容的提问来源于stack exchange,提问作者user12345
相关产品推荐
相关产品推荐

