【发布时间】:2017-11-26 11:55:27
【问题描述】:
我需要根据名为“authors”的列表列找到两个 pandas 数据帧之间的交集。
但是我得到了这个错误:
【问题讨论】:
-
您需要向我们展示您的尝试。并尽可能将代码和错误粘贴到此处,而不是提供屏幕截图。让我们轻松为您提供帮助,您可能会看到更多答案。
标签: python pandas dataframe merge jupyter
我需要根据名为“authors”的列表列找到两个 pandas 数据帧之间的交集。
但是我得到了这个错误:
【问题讨论】:
标签: python pandas dataframe merge jupyter
您不能在列表上合并,因为无法对列表进行哈希处理,请参阅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
然后你可以合并第三列。
或者,您可以尝试该问题中发布的其他解决方案。
【讨论】: