如何根据pandas中的第三个数据帧连接两个数据帧?

2024-09-30 07:25:51 发布

您现在位置:Python中文网/ 问答频道 /正文

我有两个形式的数据帧: 表1

sid   student_details
1      A
2      B
3      C

表2

^{pr2}$

表3:

sid    did
1    5
3    4
2    6

现在如何根据pandas中的dataframe3连接dataframe1和dataframe2?在


Tags: 数据pandasdetailsstudent形式didsidpr2
2条回答

这个想法是把你的df3加入到第一个。在

df = df1.set_index('sid').join(df3.set_index('sid')).reset_index()
df = df.set_index('did').join(df2.set_index('did')).reset_index().drop('did', 1)

您可以使用双^{}

print df1
     sid student_details
0    1               A
1    2               B
2    3               C

print df2
   did dept_details
0    4            E
1    5            F
2    6            G

print df3
   sid  did
0    1    5
1    3    4
2    2    6

print pd.merge(pd.merge(df1, df3, on=['sid']), df2, on=['did'])

   sid student_details  did dept_details
0    1               A    5            F
1    2               B    6            G
2    3               C    4            E

或者,如果您设置了索引:

^{pr2}$

相关问题 更多 >

    热门问题