如何在熊猫中放置2个不同的数据框

seb*_*ebk 3 python merge join dataframe pandas

我想合并2个具有不同顺序的文件:

我想在file1和file2下面合并:

文件1:

col1   col2   col3
A001   B001   C001
A002   B002   C002
A003   B003   C003
A004   B004   C004
A005   B005   C005
A006   B006   C006
Run Code Online (Sandbox Code Playgroud)

文件2:

col1   col2
A001   8
A002   2
A003   4
A004   1
A005   8
A006   3
B001   7
B002   4
B003   10
B004   11
B005   8
B006   3
C001   2
C002   9
C003   8
C004   1
C005   7
C006   6
Run Code Online (Sandbox Code Playgroud)

得到以下内容:

col1   col2   col3  col4  col5  col6
A001   8      B001  7     C001  2
A002   2      B002  4     C002  9
A003   4      B003  10    C003  8
A004   1      B004  11    C004  1
A005   8      B005  8     C005  7
A006   3      B006  3     C006  6
Run Code Online (Sandbox Code Playgroud)

非常感谢您的帮助:)

WeN*_*Ben 6

我将要做的 replace

df=pd.concat([file1,file1.replace(dict(zip(file2.col1,file2.col2))).add_suffix('_1')],axis=1).\
   sort_index(axis=1)


   col1  col1_1  col2  col2_1  col3  col3_1
0  A001       8  B001       7  C001       2
1  A002       2  B002       4  C002       9
2  A003       4  B003      10  C003       8
3  A004       1  B004      11  C004       1
4  A005       8  B005       8  C005       7
5  A006       3  B006       3  C006       6
Run Code Online (Sandbox Code Playgroud)

  • 很好,我在想类似的东西:`df2.set_index([df2 ['col1']。str [0],df2.groupby(df2 ['col1']。str [0])。cumcount()])。unstack (0).sort_index(1,1)`,然后看到它是一个合并的东西 (2认同)