Объединение двух фреймов данных на пересечении данного столбца - PullRequest
0 голосов
/ 30 октября 2018

Я хочу объединить следующие два кадра данных на их пересечении в столбце «Имя».

предположим, что фрейм данных 1:

     Name subject_id  Marks_scored
0   Billy       sub1            98
1     Amy       sub2            90
2    Bran       sub4            87
3   Alice       sub6            69
4  Ayoung       sub5            78

и датафрейм 2:

    Name subject_id  Marks_scored
0  Billy       sub2            89
1  Brian       sub4            80
2   Bran       sub3            79
3  Bryce       sub6            97
4  Betty       sub5            88

Я просто хочу, чтобы результат был:

    Name subject_id  Marks_scored
0  Billy       sub1            98
1   Bran       sub4            87
2  Billy       sub2            89
3   Bran       sub3            79

Ответы [ 2 ]

0 голосов
/ 30 октября 2018

Попробуйте использовать pd.concat, затем duplicated и логическое индексирование:

df_out = pd.concat([df1,df2])
df_out[df_out.duplicated('Name', keep=False)]

Выход:

    Name subject_id  Marks_scored
0  Billy       sub1            98
2   Bran       sub4            87
0  Billy       sub2            89
2   Bran       sub3            79
0 голосов
/ 30 октября 2018

pd.concat([df1, df2], axis=1, join='inner')

OR

pd.merge(df1, df2, on='subject_id', how='inner')

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...