2015-11-02 175 views
2

列相同的值合併數據幀我有如下2數據幀:大熊貓基於在

student_name student_id 
1 may   0000 
2 june   1111 
3 july   2222 

    member_id member_name school_name 
1 A0  april  MIT 
2 B0  may   NIT 
3 C0  june  LIT 

我想加入的方式將數據幀2產生如下結果。

student_name student_id member_id member_name school_name 
may   0000  B0  may   NIT 
june   1111  C0  june  LIT 

我想在SQL方式where student_name = member_name。 但我幾乎無法在熊貓中做到這一點。

我已經嘗試了可以​​基於同一個名稱列的熊貓合併。 你能教我一個簡單的方法來做出所需的結果。

謝謝。

回答

7

使用merge,並通過列合併上分別left_paramright_param

In [27]: 
df.merge(df1, left_on='student_name', right_on='member_name') 

Out[27]: 
    student_name student_id member_id member_name school_name 
0   may   0  B0   may   NIT 
1   june  1111  C0  june   LIT 
+0

非常感謝你。 – pinky

+0

如果我只需要school_name列,該怎麼辦? 我正在谷歌熊貓合併細節,但如果你能啓發我升技更多。謝謝。 student_name student_id school_name – pinky

+0

只需從合併的df中選擇:merged ['student_name','student_id','school_name']' – EdChum