详解Python3 pandas.merge用法


Posted in Python onSeptember 05, 2019

摘要

数据分析与建模的时候大部分时间在数据准备上,包括对数据的加载、清理、转换以及重塑。pandas提供了一组高级的、灵活的、高效的核心函数,能够轻松的将数据规整化。这节主要对pandas合并数据集的merge函数进行详解。(用过SQL或其他关系型数据库的可能会对这个方法比较熟悉。)码字不易,喜欢请点赞!!!

1.merge函数的参数一览表

详解Python3 pandas.merge用法详解Python3 pandas.merge用法

2.创建两个DataFrame

详解Python3 pandas.merge用法

3.pd.merge()方法设置连接字段。

默认参数how是inner内连接,并且会按照相同的字段key进行合并,即等价于on=‘key'

详解Python3 pandas.merge用法

也可以显示的设置on=‘key',这里也推荐这么做。

详解Python3 pandas.merge用法

当两边合并字段不同时,可以使用left_on和right_on参数设置合并字段。当然这里合并字段都是key所以left_on和right_on参数值都是key。

详解Python3 pandas.merge用法

4.pd.merge()方法设置连接方法。

主要包括inner(内连接)、outer(外链接)、left(左连接)、right(右连接)。

参数how默认值是inner内连接,上面的都是采用内连接,连接两边都有的值。

当采用outer外连接时,会取并集,并用NaN填充。

详解Python3 pandas.merge用法

外连接其实左连接和右连接的并集。左连接是左侧DataFrame取全部数据,右侧DataFrame匹配左侧DataFrame。(右连接right和左连接类似)

详解Python3 pandas.merge用法

5.pd.merge()方法索引连接,以及重复列名命名。

pd.merge()方法可以通过设置left_index或者right_index的值为True来使用索引连接,例如这里df1使用data1当连接关键字,而df2使用索引当连接关键字。

详解Python3 pandas.merge用法

从上面可以发现两个DataFrame中都有key列,merge合并之后,pandas会自动在后面加上(_x,_y)来区分,我们也可以通过设置suffixes来设置名字。

详解Python3 pandas.merge用法

总结

以上所述是小编给大家介绍的详解Python3 pandas.merge用法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
Python使用MySQLdb for Python操作数据库教程
Oct 11 Python
详解Python中的type()方法的使用
May 21 Python
Python按行读取文件的简单实现方法
Jun 22 Python
Python 多线程实例详解
Mar 25 Python
Python subprocess模块功能与常见用法实例详解
Jun 28 Python
python 调用有道api接口的方法
Jan 03 Python
Python pandas.DataFrame调整列顺序及修改index名的方法
Jun 21 Python
python 用所有标点符号分隔句子的示例
Jul 15 Python
python如何使用socketserver模块实现并发聊天
Dec 14 Python
对Pytorch中Tensor的各种池化操作解析
Jan 03 Python
python使用html2text库实现从HTML转markdown的方法详解
Feb 21 Python
Python3 pywin32模块安装的详细步骤
May 26 Python
python爬虫 猫眼电影和电影天堂数据csv和mysql存储过程解析
Sep 05 #Python
python爬取Ajax动态加载网页过程解析
Sep 05 #Python
python实现静态服务器
Sep 05 #Python
python编写简单端口扫描器
Sep 04 #Python
python 3.6.7实现端口扫描器
Sep 04 #Python
python用线性回归预测股票价格的实现代码
Sep 04 #Python
python多线程扫描端口(线程池)
Sep 04 #Python
You might like
跟我学Laravel之快速入门
2014/10/15 PHP
PHP Callable强制指定回调类型的方法
2016/08/30 PHP
PHP+Oracle本地开发环境搭建方法详解
2019/04/01 PHP
基于jQuery的自动完成插件
2011/02/03 Javascript
jQuery随手笔记之常用的jQuery操作DOM事件
2015/11/29 Javascript
JS数组操作(数组增加、删除、翻转、转字符串、取索引、截取(切片)slice、剪接splice、数组合并)
2016/05/20 Javascript
jQuery中事件与动画的总结分享
2016/05/24 Javascript
jQuery绑定自定义事件的魔法升级版
2016/06/30 Javascript
Bootstrap select实现下拉框多选效果
2016/12/23 Javascript
JS实现的tab切换选项卡效果示例
2017/02/28 Javascript
Angular2 组件通信的实例代码
2017/06/23 Javascript
Node调用Java的示例代码
2017/09/20 Javascript
Three.js实现3D机房效果
2018/12/30 Javascript
微信小程序Flex布局用法深入浅出分析
2019/04/25 Javascript
node.js中 mysql 增删改查操作及async,await处理实例分析
2020/02/11 Javascript
vue项目里面引用svg文件并给svg里面的元素赋值
2020/08/17 Javascript
vue实现打地鼠小游戏
2020/08/21 Javascript
js实现搜索提示框效果
2020/09/05 Javascript
python异常和文件处理机制详解
2016/07/19 Python
Python MD5加密实例详解
2017/08/02 Python
用Python实现随机森林算法的示例
2017/08/24 Python
python 日志增量抓取实现方法
2018/04/28 Python
python中将\\uxxxx转换为Unicode字符串的方法
2018/09/06 Python
解决nohup执行python程序log文件写入不及时的问题
2019/01/14 Python
Python爬虫爬取Bilibili弹幕过程解析
2019/10/10 Python
python 五子棋如何获得鼠标点击坐标
2019/11/04 Python
python入门之井字棋小游戏
2020/03/05 Python
keras:model.compile损失函数的用法
2020/07/01 Python
澳大利亚在线生活方式商店:Mytopia
2018/07/08 全球购物
PHP高级工程师面试问题推荐
2013/01/18 面试题
初中科学教学反思
2014/01/21 职场文书
中学生打架检讨书
2014/02/10 职场文书
材料专业毕业生求职信
2014/02/26 职场文书
团队精神的演讲稿
2014/05/14 职场文书
管理人员岗位职责
2015/02/14 职场文书
vue+springboot实现登录验证码
2021/05/27 Vue.js