【问题标题】:Python : Merge two Pandas Dataframes on a column of listPython:在一列列表上合并两个熊猫数据框
【发布时间】:2017-11-26 11:55:27
【问题描述】:

我需要根据名为“authors”的列表列找到两个 pandas 数据帧之间的交集。

但是我得到了这个错误:

【问题讨论】:

  • 您需要向我们展示您的尝试。并尽可能将代码和错误粘贴到此处,而不是提供屏幕截图。让我们轻松为您提供帮助,您可能会看到更多答案。

标签: python pandas dataframe merge jupyter


【解决方案1】:

您不能在列表上合并,因为无法对列表进行哈希处理,请参阅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

然后你可以合并第三列。

或者,您可以尝试该问题中发布的其他解决方案。

【讨论】:

    猜你喜欢
    • 2019-12-02
    • 2016-10-31
    • 1970-01-01
    • 2021-05-30
    • 2019-09-27
    • 1970-01-01
    • 1970-01-01
    • 2018-12-10
    • 2021-04-27
    相关资源
    最近更新 更多