pandas表连接 索引上的合并方法
本文介绍pandas中基于索引进行表连接的方法,涵盖单级与多级索引场景。通过left_on与right_index参数实现列与索引的匹配,并演示如何通过设置how='outer'执行外部连接,同时合并双方索引,确保数据完整性。
具体实现方式如下所示:
left1 = pd.DataFrame({‘key':[‘a','b','a','a','b','c'],'value':range(6)})
right1 = pd.DataFrame({‘group_val':[3.5,7]},index = [‘a','b'])
print(left1)
print(right1)
result = pd.merge(left1,right1,left_on='key',right_index=True)
print(result)
针对层次化数据的索引处理
lefth = pd.DataFrame({‘key1':[‘Ohio','Ohio','Ohio','Nevada','Nevada'],
‘key2':[2000,2001,2002,2001,2002],
‘data':np.arange(5)})
print(lefth)
righth = pd.DataFrame(np.arange(12).reshape(6,2),index = [[‘Nevada','Nevada','Ohio','Ohio','Ohio','Ohio'],
[2001,2000,2000,200,2001,2002]])
print(righth)
result = pd.merge(lefth,righth,left_on=[‘key1','key2'],right_index=True)
print(result)
若需将上述代码逻辑调整为外部连接模式,只需指定参数 how = ‘outer' 即可实现。
该操作将同时合并左右两张表的索引信息。
left2 = pd.DataFrame([[1,2],[3,4],[5,6]],index=[‘a','c','e'],columns=[‘Ohio','Neveda']) right2 = pd.DataFrame([[7,8],[9,10],[11,12],[13,14]],index=[‘b','c','d','e'],columns=[‘Missouri','Alabma']) print(left2) print(right2) result = pd.merge(left2,right2,how='outer',left_index=True,right_index=True) print(result)
以上关于pandas表连接及索引合并方法的介绍到此结束,希望能为读者提供有效的参考,同时也欢迎大家继续支持本站获取更多技术内容。
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









