【问题标题】:Pandas KeyError: when merging 2 dataframesPandas KeyError:合并 2 个数据帧时
【发布时间】:2022-01-07 22:12:42
【问题描述】:

我正在尝试将 DF2 中的 2 列合并到 DF1(注意 DF2 有多个列)。我将这些列合并到“唯一 ID”中。

当我这样做时,我收到以下错误 KeyError: 'Unique ID'

我在网上读到 KeyError 错误可能是由索引问题引起的,而不是使用确切的列名。但是我已经重置了索引,并且我已经检查并仔细检查了我们正在合并的列(“唯一 ID”)是否在 DF1 和 DF2 中。

我宁愿不共享 DF,因为它们包含敏感信息

这是我正在使用的代码

df = pd.merge(DF1,DF2[['System','Platform']],on='Unique ID', how='left')

【问题讨论】:

  • 您只使用 DF2 中的“Segment”和“Platform”列?所以它在第二个数据框中找不到“唯一 ID”。
  • @Paul 我已经更新了这个问题。我正在将 DF2 的系统和平台列合并到 DF1

标签: pandas merge


【解决方案1】:

试试:

df = pd.merge(DF1,DF2[['System','Platform', 'Unique ID']],on='Unique ID', how='left')

【讨论】:

  • 为什么要指定第一个唯一ID
  • 您要合并的列应该在两个数据框中。 DF2[['System','Platform']] 返回一个没有“唯一 ID”的数据框,因此它无法将该列与 DF1 中的唯一 ID 列匹配。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-08-10
  • 1970-01-01
  • 2020-03-27
  • 2012-07-23
  • 2017-03-25
  • 2016-03-02
相关资源
最近更新 更多