如何添加 2 df 不同长度的标头。虽然应该连接其他 df 标头,但它也应该按行连接。
下面是我的 df1:
df1 = pd.DataFrame({'A': [1, 2], 'B': [2, 3], 'C': [3, 4]})
df2:
df2 = pd.DataFrame({'D': [34, 'e'], 'E': ['rt', 'rt']})
以下是我的预期输出:
df = pd.DataFrame({'A': [1, 2,'D',34,'e'], 'B': [2, 3,'E','rt','rt'], 'C': [3, 4,'','','']})
我尝试了下面的许多代码,但未能达到我的预期输出:
(1)
df = pd.concat([df1, df2], axis = 0/1)
(2)
df1_header = pd.DataFrame([df2.columns], columns=df1.columns)
df2.columns = df1.columns
result = pd.concat([df1_header, df1, df2], ignore_index=True)
这是一种方法:
df = (
pd.concat(
[
df1,
df2.T.reset_index().T.rename(columns=dict(enumerate(df1.columns)))
],
axis=0,
ignore_index=True
)
)
输出
A B C
0 1 2 3
1 2 3 4
2 D E
3 34 rt
4 e rt