Python 熊猫:连接选定列上的数据帧
我有两个数据帧,如下所示Python 熊猫:连接选定列上的数据帧,python,pandas,join,merge,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 我怎样才能在加入熊猫的帮助下得到一个更新的表呢 一个 我可以很容易地在SQL中使用Update和INTERNARE join来完成它,如何在pandas中执行它,我尝试过这样做,
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
我怎样才能在加入熊猫的帮助下得到一个更新的表呢
一个
我可以很容易地在SQL中使用Update和INTERNARE join来完成它,如何在pandas中执行它,我尝试过这样做,但大多数附加/合并操作都是这样。任何帮助都将不胜感激似乎没有直接的方法,因此建议如下
a=b.merge(account,how='left',on='ID')
在最终数据集中创建所需列的列表
list=['ID','Account','type','msg']
final=a[[col for col in list if col in b.columns]]
在左连接后,它将只提供所需的列尝试以下操作:
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
你能发布你尝试过的吗?因为这可能是一个简单的修复,我认为
a.merge(B,how='left')
应该可以工作a.update(other,join='inner')那么a.merge(other,how='left')
也可以工作吗?不,它不工作。。我想要那一列,所以,实际上,我在正确的表中有100列,合并后我只需要一列,只需要帐户,这又是一个更复杂的,完全有意义,谢谢Merlin
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