繁体   English   中英

Python:在列表的列上合并两个Pandas数据框

[英]Python : Merge two Pandas Dataframes on a column of list

我需要基于一列名为“作者”的列表来查找两个熊猫数据框之间的交集。 在此处输入图片说明

但是相反,我收到此错误,请在此处输入图片描述

您不能在列表上合并,因为列表不能散列,请参见this 一种选择是通过将列表转换为字符串并在其上合并来创建附加列,例如:

df['authors_as_string'] = df['authors'].apply(lambda x: "-".join(x))

这将产生:

   id    authors authors_as_string
0   1  [a, b, c]          a-b-c
1   2  [a, b, c]          a-b-c
2   3     [a, b]            a-b
3   4     [a, c]            a-c

然后,您可以在第三列上合并。

另外,您可以尝试在该问题中发布其他解决方案。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM