Python 如何将2个卓越与熊猫合并

Python 如何将2个卓越与熊猫合并,python,pandas,dataframe,Python,Pandas,Dataframe,我有两个要合并的excel文件: file1 file2 a b a b 1 AA aa 1 AA aaaa 2 BB bb 2 BB bbbb 3 CC cc 3 CC cccc 4 DD dd 5 EE ee 与: 我能够合并并接收: file3 a b c 1 AA aa aaaa 2 BB bb bbbb 3 CC cc cccc 但

我有两个要合并的excel文件:

file1        file2
   a   b        a     b
1  AA  aa    1  AA   aaaa
2  BB  bb    2  BB   bbbb
3  CC  cc    3  CC   cccc
4  DD  dd
5  EE  ee
与:

我能够合并并接收:

 file3
   a     b   c
1  AA   aa   aaaa
2  BB   bb   bbbb
3  CC   cc   cccc
但是,我希望收到:

 file4
   a     b   c
1  AA   aa   aaaa
2  BB   bb   bbbb
3  CC   cc   cccc
4  DD   dd
5  EE   ee

请告知配方。感谢将您的数据帧视为

file1 = pd.DataFrame({"a": ["AA", "BB", "CC", "DD", "EE"], "b": ["aa", "bb", "cc", "dd", "ee"]})
file2 = pd.DataFrame({"a": ["AA", "BB", "CC"], "b": ["aaaa", "bbbb", "cccc"]})
使用:

这导致:

    a   b     c
0  AA  aa  aaaa
1  BB  bb  bbbb
2  CC  cc  cccc
3  DD  dd      
4  EE  ee      

仍然有一些问题,但可能是最终的格式问题。是否可以对结果列进行排序以接收c、a、b?必须使用
df=df[['c','a','b']]]
对这些列重新排序。
all_data_st = (
    pd.merge(file1, file2, on="a", how="left")
    .fillna('').rename(columns={"b_x": "b", "b_y": "c"}))

print(all_data_st)
    a   b     c
0  AA  aa  aaaa
1  BB  bb  bbbb
2  CC  cc  cccc
3  DD  dd      
4  EE  ee