详解Python3 pandas.merge用法

yipeiwu_com5年前Python基础

摘要

数据分析与建模的时候大部分时间在数据准备上,包括对数据的加载、清理、转换以及重塑。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来设置名字。

在这里插入图片描述

总结

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

相关文章

python中日志logging模块的性能及多进程详解

python中日志logging模块的性能及多进程详解

前言 Java 中最通用的日志模块莫过于 Log4j 了,在 python 中,也自带了 logging 模块,该模块的用法其实和 Log4j 类似。日志是记录操作的一种好方式。但是日...

linux环境下的python安装过程图解(含setuptools)

linux环境下的python安装过程图解(含setuptools)

这里我不想采用诸如ubuntu下的apt-get install方式进行python的安装,而是在linux下采用源码包的方式进行python的安装。 一、下载python源码包 打开u...

Python实现Logger打印功能的方法详解

前言 众所周知在Python中有专门用于logger打印的套件叫logging,但是该套件logger仅接收一个字符串类型的logger打印信息。因此,我们在使用是需要先提前将要打印的信...

Windows上使用Python增加或删除权限的方法

在使用Python在 Windows 平台上开发的时候, 有时候我们需要动态增加或删除用户的某些权限, 此时我们可以通过 AdjustTokenPrivileges API 来实现。 比...

详解python调度框架APScheduler使用

最近在研究python调度框架APScheduler使用的路上,那么今天也算个学习笔记吧! # coding=utf-8 """ Demonstrates how to use t...