小编Mar*_*ijn的帖子

合并数据帧而不复制python pandas中的行

我想使用类似的列'A'组合两个数据帧:

>>> df1
    A   B
0   I   1
1   I   2
2   II  3

>>> df2
    A   C
0   I   4
1   II  5
2   III 6
Run Code Online (Sandbox Code Playgroud)

为此,我尝试使用:

merged = pd.merge(df1,df2,on ='A',how ='outer')

返回的是:

>>> merged
    A   B   C
0   I   1.0 4
1   I   2.0 4
2   II  3.0 5
3   III NaN 6
Run Code Online (Sandbox Code Playgroud)

但是,由于df2只包含A =='I'的一个值,因此我不希望在合并的数据帧中重复此值.相反,我想要以下输出:

>>> merged
    A   B   C
0   I   1.0 4
1   I   2.0 NaN
2   II  3.0 5
3   III NaN 6
Run Code Online (Sandbox Code Playgroud)

做这个的最好方式是什么?我是python的新手,并且仍然与所有join/merge/concatenate/append操作稍微混淆.

python merge dataframe pandas

3
推荐指数
1
解决办法
2963
查看次数

标签 统计

dataframe ×1

merge ×1

pandas ×1

python ×1