Dataframe 与Pandas的连接

iyr7buue  于 2022-12-21  发布在  其他
关注(0)|答案(2)|浏览(154)

我对Pandas很陌生,我被这个 Dataframe 连接卡住了。假设我有2个 Dataframe :

df_1=pd.DataFrame({
"A":[1, 1, 2, 2, 3, 4, 4],
"B":[1, 2, 1, 2, 1, 1, 3],
"C":['a','b','c','d','e','f','g']
})

以及

df_2=pd.DataFrame({
    "A":[1, 3, 4],
    "D":[1,'m',7]
})

我想连接/合并相同['A']值的2个 Dataframe ,这样得到的 Dataframe 为:

df_3=pd.DataFrame({
    "A":[1, 1, 3, 4, 4],
    "B":[1, 2, 1, 1, 3],
    "C":['a','b','e','f','g'],
    "D":[1, 1, 'm', 7, 7]
})

我该怎么做呢?
先谢了

1tuwyuhd

1tuwyuhd1#

只需执行内部合并:

df_1.merge(df_2, how="inner", on="A")

产出

A  B  C  D                                                                                                        
0  1  1  a  1                                                                                                        
1  1  2  b  1                                                                                                        
2  3  1  e  m                                                                                                        
3  4  1  f  7                                                                                                        
4  4  3  g  7
eimct9ow

eimct9ow2#

您也可以先执行左merge,然后执行dropna

df_3 = df_1.merge(df_2, on=['A'], how='left').dropna(axis=0)

输出:

A  B  C  D
0  1  1  a  1
1  1  2  b  1
4  3  1  e  m
5  4  1  f  7
6  4  3  g  7

相关问题