熊猫:加入所选列的数据帧

时间:2016-07-04 15:44:44

标签: python pandas join merge

我有两个数据框如下

 Data Set A
 ID type   msg 
 1  High   Lets do
 2  Low    whats it 
 3  Medium thats it

 Data Set B 
 ID  Accounttype
 2   Facebook
 3   Linkedin

如何在加入pandas的帮助下获得更新的表,它应该是这样的  

Updated DatasetA 

ID Account    type  msg
 1            High   Lets do
 2  Facebook  Low    whats it 
 3  Linkedin  Medium thats it

我可以轻松地在SQL中使用Update和内部联接,如何在pandas中执行它,我试图这样做,但是大多数操作都用于追加/合并。任何帮助将不胜感激

2 个答案:

答案 0 :(得分:4)

试试这个:

 df4

#   ID    type      msg
 #   0   1    High   Letsdo
 #   1   2     Low  whatsit
 #   2   3  Medium  thatsit

df3:

 #          ID Accounttype  xxx
 #       0   2    Facebook   24
 #       1   3    Linkedin   44

   df4.merge(df3[['ID','Accounttype']],how='left').fillna("")

#    ID    type      msg Accounttype
# 0   1    High   Letsdo            
# 1   2     Low  whatsit    Facebook
# 2   3  Medium  thatsit    Linkedin

答案 1 :(得分:1)

似乎没有直接的方法,所以建议遵循

html, body {margin:0;padding:0;height:100%;width:100%}

在最终数据集中创建所需列的列表

 a=b.merge(account,how='left',on='ID')

它只会在左连接后为您提供所需的列