使用公共列映射两个数据框

Posted

技术标签:

【中文标题】使用公共列映射两个数据框【英文标题】:Map two dataframes with Common columns 【发布时间】:2021-06-16 01:58:03 【问题描述】:

我有两个具有 n 个公共列的数据框。第一列有 48 列,另一列有 56 列。我正在尝试使用 pd.concat 垂直连接这些列,但我总是收到以下错误重新索引仅对具有唯一值的索引对象有效

df1

Column 1 Column 2 Column3
a b c

df2

Column 1 Column 3 Column 2 Column 5 Column 6 Column 7
a b c a Nan c

我想垂直连接它。 但我收到以下错误重新索引仅对具有唯一值的索引对象有效

Merged_Data = pd.concat([Merged_Data,df] , join = "outer", ignore_index = True).reset_index(drop = True)

这是一个巨大的数据框,出于安全原因无法共享。 我相信问题出在列索引上,但我尝试了很多东西

【问题讨论】:

你能贴出代码,返回你提到的错误吗? 有many ways to use concat。我想查看索引完整的数据框以及您正在使用的实际 concat 语句。 【参考方案1】:

如果你只是使用会怎样

pd.concat([df1, df2])

没有 index 或 reset_index 部分?

【讨论】:

都试过了。由于某种原因不起作用。

以上是关于使用公共列映射两个数据框的主要内容,如果未能解决你的问题,请参考以下文章

在没有公共列的情况下连接两个数据框

将两个数据框与一些公共列合并,其中公共的组合需要是自定义函数

根据 Pandas 中的公共列值合并两个数据框

在python中的公共列上加入两个数据框

依赖于公共列的两个数据框之间的交叉连接

将数据框中的两个混乱向量拆分为一个公共列