码迷,mamicode.com
首页 > 编程语言 > 详细

利用 Python 进行数据分析(十二)pandas:数据合并

时间:2016-08-12 11:52:22      阅读:192      评论:0      收藏:0      [点我收藏+]

标签:


pandas 提供了三种主要方法可以对数据进行合并:
  • pandas.merge()方法:数据库风格的合并;
  • pandas.concat()方法:轴向连接,即沿着一条轴将多个对象堆叠到一起;
  • 实例方法combine_first()方法:合并重叠数据。

pandas.merge()方法:数据库风格的合并
 
例如,通过merge()方法将两个DataFrame合并:
技术分享
on=‘name‘的意思是将name列当作键;
默认情况下,merge做的是内连接(inner),即键的交集。
其他方式还有左连接(left),右连接(right)和外连接(outer)。例如将刚刚的合并指定为左连接:
技术分享

再试试外连接,结果取键的并集:
技术分享

刚刚的三个合并都是以列名作为连接键,DataFrame还有一个join()方法可以以索引作为连接键
例如:
技术分享
 
pandas.concat()方法:轴向连接,即沿着一条轴将多个对象堆叠到一起
 
例如:
技术分享
 
默认情况下,concat在竖轴(axis=0)上连接,即产生一个新的Series。如果想要在横轴方向连接,则传入axis=1,例如:
技术分享

实例方法combine_first()方法:合并重叠数据
 
例如:
技术分享
这个方法等价与:
技术分享
它做的是一个矢量化的if-else操作,如果s1里某个位置上的数据为空,则用s2同位置上的元素来补,你可以理解为“打补丁”操作。

接下来一篇随笔内容是:利用 Python 进行数据分析(十三)pandas:数据转换,有兴趣的朋友欢迎关注本博客,也欢迎大家添加评论进行讨论。

利用 Python 进行数据分析(十二)pandas:数据合并

标签:

原文地址:http://www.cnblogs.com/sirkevin/p/5764155.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!