Python Pandas合并数据函数有哪些,如何用
Admin 2022-09-17 群英技术资讯 293 次浏览
今天借着这个机会,就为大家盘点一下pandas中合并数据的5个函数。但是对于每个函数,我这里不打算详细说明,具体用法大家可以参考pandas官当文档。
join是基于索引的横向拼接,如果索引一致,直接横向拼接。如果索引不一致,则会用Nan值填充。
x = pd.DataFrame({'A': ['A0', 'A1', 'A2'], 'B': ['B0', 'B1', 'B2']}, index=[0, 1, 2]) y = pd.DataFrame({'C': ['C0', 'C2', 'C3'], 'D': ['D0', 'D2', 'D3']}, index=[0, 1, 2]) x.join(y)
结果如下:
x = pd.DataFrame({'A': ['A0', 'A1', 'A2'], 'B': ['B0', 'B1', 'B2']}, index=[0, 1, 2]) y = pd.DataFrame({'C': ['C0', 'C2', 'C3'], 'D': ['D0', 'D2', 'D3']}, index=[1, 2, 3]) x.join(y)
结果如下:
merge是基于指定列的横向拼接,该函数类似于关系型数据库的连接方式,可以根据一个或多个键将不同的DatFrame连接起来。该函数的典型应用场景是,针对同一个主键存在两张不同字段的表,根据主键整合到一张表里面。
可以指定不同的how参数,表示连接方式,有inner内连、left左连、right右连、outer全连,默认为inner;
x = pd.DataFrame({'姓名': ['张三', '李四', '王五'], '班级': ['一班', '二班', '三班']}) y = pd.DataFrame({'专业': ['统计学', '计算机', '绘画'], '班级': ['一班', '三班', '四班']}) pd.merge(x,y,how="left")
结果如下:
concat函数既可以用于横向拼接,也可以用于纵向拼接。
x = pd.DataFrame([['Jack','M',40],['Tony','M',20]], columns=['name','gender','age']) y = pd.DataFrame([['Mary','F',30],['Bob','M',25]], columns=['name','gender','age']) z = pd.concat([x,y],axis=0) z
结果如下:
x = pd.DataFrame({'姓名': ['张三', '李四', '王五'], '班级': ['一班', '二班', '三班']}) y = pd.DataFrame({'专业': ['统计学', '计算机', '绘画'], '班级': ['一班', '三班', '四班']}) z = pd.concat([x,y],axis=1) z
结果如下:
append主要用于纵向追加数据。
x = pd.DataFrame([['Jack','M',40],['Tony','M',20]], columns=['name','gender','age']) y = pd.DataFrame([['Mary','F',30],['Bob','M',25]], columns=['name','gender','age']) x.append(y)
结果如下:
conbine可以通过使用函数,把两个DataFrame按列进行组合。
x = pd.DataFrame({"A":[3,4],"B":[1,4]}) y = pd.DataFrame({"A":[1,2],"B":[5,6]}) x.combine(y,lambda a,b:np.where(a>b,a,b))
结果如下:
注:上述函数,用于返回对应位置上的最大值。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
一、super()的入门使用-在类的继承中,如果重定义某个方法,该方法会覆盖父类的同名方法,但有时,我们希望能同时实现父类的功能,这时,我们就需要调用父类的方法了,可通过使用 super 来实现,比如:classAnimal(object):def__init__(self,name):self.name=namedefgre
这篇文章主要为大家介绍了Python简单实现gif动图倒放的示例过程,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
这篇文章主要介绍了通过使用OpenCV进行基于深度学习的对象检测以及使用OpenCV检测视频,文中的示例代码讲解详细,需要的可以参考一下
本文主要介绍了Python中collections.Counter()的具体使用,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧
这篇文章主要介绍了使用pytorch加载并读取COCO数据集,基础知识包括元祖、字典、数组,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008