Python 如何连接数据帧,以便将缺少的值设置为NaN

Python 如何连接数据帧,以便将缺少的值设置为NaN,python,pandas,Python,Pandas,我有两个数据帧df1和df2。下面是一个玩具的例子,让我们看看我的问题df1看起来像 col1 col2 1 2 0 7 col1 col3 9 2 5 3 df2看起来像 col1 col2 1 2 0 7 col1 col3 9 2 5 3 我想做pd.concat([df1,df2]),但结果是: col1 col2 col3 1 2 NaN 0 7 Nan 9 NaN 2 5 NaN 3 有

我有两个数据帧df1和df2。下面是一个玩具的例子,让我们看看我的问题<代码>df1看起来像

col1 col2
1    2
0    7
col1 col3
9    2
5    3
df2
看起来像

col1 col2
1    2
0    7
col1 col3
9    2
5    3
我想做
pd.concat([df1,df2])
,但结果是:

col1 col2 col3
1    2    NaN
0    7    Nan
9    NaN  2
5    NaN  3
有办法做到这一点吗

import pandas as pd

df1 = pd.DataFrame()
df1['col1'] = [1, 0]
df1['col2'] = [2, 7]

df2 = pd.DataFrame()
df2['col1'] = [9, 5]
df2['col3'] = [5, 3]

x = df1.append(df2)
输出:

   col1  col2  col3
0     1   2.0   NaN
1     0   7.0   NaN
0     9   NaN   5.0
1     5   NaN   3.0

谢谢您。看来我犯了个愚蠢的错误错过了[]。append与concat有何不同?这将是一本很好的读物:了解Pandas中append、concatenation和merge概念的另一个链接: