2015-10-02 2 views
2

У меня есть две панды данных кадров:Как соединить две панды данных кадров

df1 
    id frid title 
    1 1 abc 
    2 1 ddd 
    3 2 ghc 
    4 3 frg 
    5 1 def 

df2 
    frid comment 
    1 w 
    2 s 
    3 e 

Теперь я хочу, чтобы объединить эти два кадра данных на основе поля frid. Другими словами, я хочу добавить столбец comment в df1. Как я могу это сделать? Я знаю о команде join, но она работает по-другому (df1.join(df2)).

Результат должен быть:

df 
    id frid title comment 
    1 1 abc w 
    2 1 ddd w 
    3 2 ghc s 
    4 3 frg e 
    5 1 def w 

ответ

3

использование merge и передать столбец, который вы хотите объединить на, по умолчанию это выполняет «внутренний» сливаться:

In [198]: 
df1.merge(df2, on='frid') 

Out[198]: 
    id frid title comment 
0 1  1 abc  w 
1 2  1 ddd  w 
2 5  1 def  w 
3 3  2 ghc  s 
4 4  3 frg  e 
Смежные вопросы