Saya memiliki dafarame seperti ini:

Df1:

     col1  col2        data1       data2    data3
0     A     A_1         2            4        5
1     A     A_2         11           58       87
2     A     A_3         14           24       54
3     B     B_1         3            6        9
4     B     B_2         1            38       77
5     B     B_3         54           13       10

Dan saya juga punya dataframe lis yang ini:

Df2:

     col1  col2        sample1    sample2  sample3
0     A     A_0         98          57       102
2     A     A_1         6           13       5
2     A     A_2         13          52       17
3     A     A_3         8           29       50
4     B     B_0         60          75       98
5     B     B_1         3           6        9
6     B     B_2         1           8        77
7     B     B_3         2           1        10

Jadi, bagaimana saya bisa menggabungkan kerangka data ini, berdasarkan col1 dan col2 dan membuat kerangka data seperti ini:

     col1  col2        sample1    sample2  sample3     data1   data2   data3
0     A     A_0         98          57       102        NaN     NaN     NaN
2     A     A_1         6           13       5          2       4       5
2     A     A_2         13          52       17         11      58      87
3     A     A_3         8           29       50         14      24      54
4     B     B_0         60          75       98         NaN     NaN     NaN
5     B     B_1         3           6        9          3       6       9
6     B     B_2         1           8        77         1       38      77
7     B     B_3         2           1        10         54      13      10
0
user14073111 13 Mei 2021, 01:32

1 menjawab

Jawaban Terbaik

Gunakan pandas.merge Argumen on mendefinisikan kolom tempat Anda ingin menggabungkan kerangka data dan data how kata kunci menentukan jenis penggabungan yang Anda inginkan. Silakan lihat dokumentasi untuk mengonfirmasi jenis penggabungan yang Anda inginkan. Tapi saya pikir dalam hal ini Anda ingin outer bergabung.

print(pd.merge(df1, df2, on='col2',how='outer'))
1
kinshukdua 12 Mei 2021, 22:43