Pandas 按索引合并数据集的方法

时间:2021-05-22

如下所示:

import numpy as npimport pandas as pdfrom pandas import Series,DataFrame

一、merge函数

left1 = DataFrame({'水果':['苹果','梨','草莓'], '价格':[3,4,5], '数量':[9,8,7]}).set_index('水果')right1 = DataFrame({'水果':['苹果','草莓'], '产地':['美国','中国']})print(left1)print(right1) 价格 数量水果 苹果 3 9梨 4 8草莓 5 7 产地 水果0 美国 苹果1 中国 草莓print(pd.merge(left1,right1,right_on='水果',left_index=True,how='outer')) 价格 数量 产地 水果0 3 9 美国 苹果1 4 8 NaN 梨1 5 7 中国 草莓

二、DataFrame的join函数

left2 = left1right2 = right1.set_index('水果')

1.join函数默认将两个DataFrame的index进行合并

print(left2.join(right2)) 价格 数量 产地水果 苹果 3 9 美国梨 4 8 NaN草莓 5 7 中国

2.若其中一个DataFrame合并的键不在索引上,可使用on参数

print(right1.join(left1,on='水果',how='outer')) 产地 水果 价格 数量0 美国 苹果 3 91 中国 草莓 5 71 NaN 梨 4 8

3.多个DataFrame按索引合并

another = DataFrame({'水果':['苹果','香蕉','梨'], '品质':['AA','AAAA','A']}).set_index('水果')print(left2.join([right2,another],how='outer')) 价格 数量 产地 品质梨 4.0 8.0 NaN A苹果 3.0 9.0 美国 AA草莓 5.0 7.0 中国 NaN香蕉 NaN NaN NaN AAAA

以上这篇Pandas 按索引合并数据集的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章