合并两个具有相同列名但在熊猫中列数不同的数据框

Posted

技术标签:

【中文标题】合并两个具有相同列名但在熊猫中列数不同的数据框【英文标题】:Merging two dataframes with same column names but different number of columns in pandas 【发布时间】:2016-08-12 01:33:00 【问题描述】:

我有两个 pandas 数据框

df1 = DataFrame([[0,123,321],[0,1543,432]], columns=['A', 'B','C'])
df2 = DataFrame([[1,124],[1,1544]], columns=['A', 'C'])

我想合并这些,以便新的数据框如下所示

A     |    B      |   C
0         123        321
0         1543       432
1         null       124
1         null       1544

我尝试过使用 append 和 concat,但似乎没有任何效果。任何帮助将不胜感激。

【问题讨论】:

使用 append & concat 为您的失败尝试添加 code-sn-ps 将有助于解决特定错误 【参考方案1】:

连接数据帧

import pandas as pd
pd.concat([df1,df2], axis=0)
   A     B     C
0  0   123   321
1  0  1543   432
0  1   NaN   124
1  1   NaN  1544

【讨论】:

谢谢这成功了。我将此标记为答案,因为它也适合空数据框。 Append 方法不适用于空数据框。【参考方案2】:

来自doc-ref 参考 试试:df1.append(df2, ignore_index=True)

样本输出:

    A     B     C
 0  0   123   321
 1  0  1543   432
 2  1   NaN   124
 3  1   NaN  1544

【讨论】:

以上是关于合并两个具有相同列名但在熊猫中列数不同的数据框的主要内容,如果未能解决你的问题,请参考以下文章

代码返回列名,但Kotlin中列数为零

删除熊猫数据框中列的小数点

R - 输入前缀时计算数据框中列数的函数

给定列名,数据框中列的平均值

如何选择数据框中列的前 3 个值 - 熊猫

做某事。如果在熊猫数据框中列中的值等于 1