如何合并/连接两个具有不同列长度的数据框?

问题描述 投票:0回答:1

我在合并或连接具有不同列长度的两个数据帧时遇到问题。 下面的两个数据框有 3 个相同的列名称,df2 有另一个列。

a = [100, 66, 80]
b = [26, 53, 45]
c = [94, 100, 32]
df1 = pd.DataFrame([a,b,c], columns = ['A', 'C', 'D'])
a = [88, 94, 21, 39]
b = [82, 79, 19, 87]
c = [20, 10, 92, 13]
df2 = pd.DataFrame([a,b,c], columns = ['A', 'B', 'C', 'D'])

我现在想做的是合并两个数据框,如下所示

预计

enter image description here

但是输出如下

输出

enter image description here

我使用了“pd.concat”和“pd.merge”,但没有人工作得很好。

pd.concat([df1, df2], join = 'outer')
pd.merge(df1, df2, how = 'outer')

有人可以给我建议如何获得结果表吗?

我不是程序员,这是我第一次使用“stackoverlow”,所以我不太清楚如何使用这个网站。 所以..理解我:^) 谢谢你的帮助。

python dataframe merge concatenation
1个回答
0
投票

如果您只担心列的顺序,可以使用

reindex
功能。

new_df = pd.concat([df1, df2], join = 'outer')
new_df = new_df.reindex(columns=['A', 'B', 'C', 'D'])

这将更新 DataFrame 列的顺序。

© www.soinside.com 2019 - 2024. All rights reserved.