[Python3]pandas.merge用法详解
摘要
数据分析与建模的时候大部分时间在数据准备上,包括对数据的加载、清理、转换以及重塑。pandas提供了一组高级的、灵活的、高效的核心函数,能够轻松的将数据规整化。这节主要对pandas合并数据集的merge函数进行详解。(用过SQL或其他关系型数据库的可能会对这个方法比较熟悉。)码字不易,喜欢请点赞!!!
1.merge函数的参数一览表
2.创建两个DataFrame
3.pd.merge()方法设置连接字段。
默认参数how是inner内连接,并且会按照相同的字段key进行合并,即等价于on=‘key’。
也可以显示的设置on=‘key’,这里也推荐这么做。
当两边合并字段不同时,可以使用left_on和right_on参数设置合并字段。当然这里合并字段都是key所以left_on和right_on参数值都是key。
4.pd.merge()方法设置连接方法。
主要包括inner(内连接)、outer(外链接)、left(左连接)、right(右连接)。
参数how默认值是inner内连接,上面的都是采用内连接,连接两边都有的值。
当采用outer外连接时,会取并集,并用NaN填充。
外连接其实左连接和右连接的并集。左连接是左侧DataFrame取全部数据,右侧DataFrame匹配左侧DataFrame。(右连接right和左连接类似)
5.pd.merge()方法索引连接,以及重复列名命名。
pd.merge()方法可以通过设置left_index或者right_index的值为True来使用索引连接,例如这里df1使用data1当连接关键字,而df2使用索引当连接关键字。
从上面可以发现两个DataFrame中都有key列,merge合并之后,pandas会自动在后面加上(_x,_y)来区分,我们也可以通过设置suffixes来设置名字。
姊妹篇:pandas.concat用法详解!!!
[Python3]pandas.merge用法详解相关推荐
- python argv 详解_Python3 sys.argv[ ]用法详解
sys.argv[]说白了就是一个从程序外部获取参数的桥梁,这个"外部"很关键,因为我们从外部取得的参数可以是多个,所以获得的是一个列表(list),也就是说sys.argv其实可 ...
- python多个strip_python 格式化多个Python3中strip()、lstrip()、rstrip()用法详解
Python中有三个去除头尾字符.空白符的函数,它们依次为: strip: 用来去除头尾字符.空白符(包括n.r.t.' ',即:换行.回车.制表符.空格) lstrip:用来去除开头字符.空白符(包 ...
- Oracle Merge Into 的用法详解实例
Oracle merge into 的用法详解实例 作用:merge into 解决用B表跟新A表数据,如果A表中没有,则把B表的数据插入A表: 语法: MERGE INTO [your table- ...
- python中rstrip用法_浅谈Python3中strip()、lstrip()、rstrip()用法详解
简单来说,三种方法是为了删除字符串中不同位置的指定字符.其中,strip()用于去除字符串的首尾字符,同理,lstrip()用于去除左边的字符,rstrip()用于去除右边的字符 Python中有三个 ...
- Pandas中loc和iloc函数用法详解(源码+实例)
loc函数:通过行索引 "Index" 中的具体值来取行数据(如取"Index"为"A"的行) iloc函数:通过行号来取行数据(如取第二行 ...
- python3 isinstance用法_对python中assert、isinstance的用法详解
1. assert 函数说明: Assert statements are a convenient way to insert debugging assertions into a program ...
- python3 isinstance用法_python isinstance函数用法详解
这篇文章主要介绍了python isinstance函数用法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 isinstance() 函数来判断 ...
- python中的super用法详解_Python中super函数用法实例分析
本文实例讲述了python中super函数用法.分享给大家供大家参考,具体如下: 这是个高大上的函数,在python装13手册里面介绍过多使用可显得自己是高手 23333. 但其实他还是很重要的. 简 ...
- python explode_pandas dataframe 中的explode函数用法详解
在使用 pandas 进行数据分析的过程中,我们常常会遇到将一行数据展开成多行的需求,多么希望能有一个类似于 hive sql 中的 explode 函数. 这个函数如下: Code # !/usr/ ...
最新文章
- 2022-2028年中国TAC薄膜行业市场全景评估及投资前景规划报告
- linux上安装mysql,tomcat,jdk
- nChain首席科学家CSW:闪电网络会把BCE变成空洞的幽灵
- JMJS系统总结系列----Jquery分页扩展库(五)
- 机器学习性能改善备忘单
- 疯子的算法总结(九) 图论中的矩阵应用 Part 1 POJ3613 Cow Relays
- LeetCode 7 Reverse Integer(反转数字)
- [NOIP2016]愤怒的小鸟 状态压缩dp
- python虚拟环境 pyenv_Python 虚拟环境 pyenv、venv(pyvenv)、virtualenv之间的区别
- 网络监视工具nethogs命令
- SAP License:按BOM进行原料耗用拆分-模拟面包制造
- 网络爬虫之Xpath用法汇总
- io_uring 新异步 IO 机制,性能提升超 150%,堪比 SPDK
- java.sql.SQLException: sql injection violation, syntax error: TODO QUES
- 安卓入门教程(十五)- Fragment,Service,WAMP下载
- 【转】如何设置服务器网卡千兆变万兆
- html大鱼吃小鱼游戏,大鱼吃小鱼 网页游戏源码(javascript)
- TweenMax介绍
- 管理者的人品的重要性
- session cookie的区别最全总结
热门文章
- stm32——中断优先级管理
- 自定义复选框checkbox样式
- 2009成渝微型计算机处于空白,学海园大联考 2020届高三信息卷(二)文综答案
- Ubuntu Server 20.04 安装桌面(图形界面) 以及 远程桌面
- 深度学习——损失函数(Regression Loss、Classification Loss)
- 应用层——HTTP协议
- linux下安装安装jdk和安装android studio
- css如何去掉或修改浏览器默认滚动条
- c语言remainder函数,【总结】C/C++取余操作:%、fmod()、remainder()的区别和联系
- 关于@NotNull和@NotBlank的问题