Pandas 是一套用于 Python 的快速、高效的数据分析工具。它可以用于数据挖掘和数据分析,同时也提供数据清洗功能。本文将详细讲解数据合并与连接,目录如下:

concat

一.定义

concat函数可以在两个维度上对数据进行拼接,默认纵向拼接(axis=0),即按行拼接。拼接方式默认为外连接(outer),即取所有的表头字段或索引字段。

二.语法

pd.concat(objs,axis=0, join='outer', ignore_index=False,

keys=None,levels=None, names=None, verify_integrity=False,

copy=True)

参数释义:

objs:需要用于连接合并的对象列表

axis:连接的方向,默认为0(按行),按列为1

join:连接的方式,默认为outer,可选inner只取交集

ignore_index:合并后的数据索引重置,默认为False,可选True

keys:列表或数组,也可以是元组的数组,用来构造层次结构索引

levels:指定用于层次化索引各级别上的索引,在有keys值时

names:用于创建分层级别名称,在有keys和levels时

verify_integrity:检查连接对象中新轴是否重复,若是则异常,默认为False允许重复

copy:默认为True,如果是False,则不会复制不必要的可以提高效率

三.代码示例

首先,我们看一个简单的例子:

以上代码构建了3个字典并转为DataFrame,然后通过concat实现默认方式合并。合并演示如下:

1.设置参数keys

2.设置axis参数

axis=1按列合并,默认情况下,join='outer',合并时索引全部保留,对于不存在值的部分会默认赋NaN。

3.设置join参数

4.设置ignore_index参数

5.Series与DataFrame合并

append

一.定义

运用append方法,可以将Series或字典数据添加到DataFrame。

二.代码示例

merge

一.定义

merge函数可根据一个或多个键(列)相同进行DataFrame拼接。类似于关系型数据库的join操作。

二.语法

pd.merge(left, right, how='inner', on=None, left_on=None,

right_on=None,left_index=False,right_index=False, sort=True,

suffixes=('_x', '_y'), copy=True, indicator=False,validate=None)

参数释义:

left:参与合并的左侧数据

right:参与合并的右侧数据

how:合并类型:inner(默认内连接)、outer(外连接)、left(左连接)、right(右连接)

on:用于连接的列名,默认为左右侧数据共有的列名,指定时需要为左右侧数据都存在的列名

left_on:左侧数据用于连接的列

right_on:右侧数据用于连接的列

left_index:将左侧索引作为连接的列

right_index:将右侧索引作为连接的列

sort:排序,默认为True,设置为False可提高性能

suffixes:默认为('_x', '_y'),可以自定义如('date_x','date_y')

copy:默认为True,如果是False,则不会复制不必要的可以提高效率

indicator:指示器,默认False,设置为True时会新增一列标识

validate:字符串,如果指定则会检测合并的数据是否满足指定类型(1对1,1对多,多对1,多对多)

三.示例

首先,我们看一个简单的例子:

1.设置参数how

2.设置validate参数

3.设置indicator参数

4.设置left_on参数和right_on参数

join

一.定义

join可以将两个没用共同列名的数据进行快速合并,默认是保留被合并的数据索引。join接受的参数有how、on和suffix等。

二.示例

E N D

各位伙伴们好,詹帅本帅搭建了一个个人博客和小程序,汇集各种干货和资源,也方便大家阅读,感兴趣的小伙伴请移步小程序体验一下哦!(欢迎提建议)

推荐阅读

牛逼!Python常用数据类型的基本操作(长文系列第①篇)

牛逼!Python的判断、循环和各种表达式(长文系列第②篇)

牛逼!Python函数和文件操作(长文系列第③篇)

牛逼!Python错误、异常和模块(长文系列第④篇)

数据合并之concat、append、merge和join相关推荐

  1. 【Python】图解Pandas数据合并:concat、join、append

    公众号:尤而小屋 作者:Peter 编辑:Peter 图解pandas数据合并:concat+join+append 在上一篇文章中介绍过pandas中最为常用的一个合并函数merge的使用,本文中介 ...

  2. pandas数据合并:concat、join、append

    公众号:尤而小屋 作者:Peter 编辑:Peter 大家好,我是Peter~ 图解pandas数据合并:concat+join+append 在上一篇文章中介绍过pandas中最为常用的一个合并函数 ...

  3. 【Python数据分析】之数据合并的concat函数与merge函数

    文章目录 系列文章 一.concat函数 1)横向堆叠与外连接 横向堆叠合并df1和df2,采用==外连接==的方式 2) 纵向堆叠与内链接 二.merge()函数 1)根据行索引合并数据 2)合并重 ...

  4. Python之数据合并——【concat()函数、merge()函数、join()方法、combine_first()方法】

    文章目录 轴向堆叠数据--concat()函数 横向堆叠与外连接 纵向堆叠与内连接 主键合并数据--merge()函数 内连接方式 外连接方式 左连接方式 右连接方式 其他 根据行索引合并数据--jo ...

  5. Python - pandas DataFrame数据的合并与拼接(merge、join、concat)

    目录 0 概述 1 merge方法 1.1 内连接 1.2 外连接 1.3 左连接 1.4 右连接 1.5 基于多列的连接算法 1.6 基于index的连接方法 2 join方法 2.1 index与 ...

  6. 数据合并处理concat

    var data = [{name: '海门', value: 9},{name: '鄂尔多斯', value: 12},{name: '招远', value: 12},{name: '舟山', va ...

  7. Python数据分析【第9天】| DataFrame的属性编码、数据合并和连接(get_dummies,merge,join,concat)

    系列文章目录 第1天:读入数据 第2天:read().readline()与readlines() 第3天:进度条(tqdm模块) 第4天:命令行传参(argparse模块) 第5天:读.写json文 ...

  8. DataAnalysis:数据分析、数据清理、数据合并

    数据清洗 缺失值处理 删除法(占比极少) 插补法(均值插补,回归插补,极大似然估计) 噪声过滤(减少随机误差) 回归法:一个函数拟合数据来使得数据光滑,达到去噪效果. 均值平滑法:对于具有序列特征的变 ...

  9. 【数据科学】05 数据合并(merge、concat、combine)与数据清洗(缺失值、重复值、内容和格式)

    文章目录 1. 数据合并 1.1 merge()合并 1.2 concat()合并 1.3 combine()合并 2. 数据清洗 2.1 缺失值 2.2 重复值 2.3 内容与格式清洗 1. 数据合 ...

最新文章

  1. android 炫酷背景,炫酷-背景图垂直循环滚动登录页,Android RecyclerView实现
  2. mfc 弹框只出现一次_只出现一次的数字
  3. 解决windows显示开启HDR后chrome内截图泛白问题
  4. QCustomplot控件设备背景图片(Qt图片自适应控件大小),并且设置绘图区域颜色透明
  5. 修改引入表打造穿透KIS6的下载者(转)
  6. linux 分割pdf,PDFBox分割PDF文档
  7. matlab表白_撩妹攻略|理工男专属情人节表白礼物来啦~
  8. (01背包 排序+特判)饭卡(hdu 2546)
  9. 第一次软工作业(数独)
  10. Windows xp开机时不显示用户名导致无法登录的错误处理方法
  11. ORACLE导入unl
  12. 绿盟漏扫系统漏洞及修复方案
  13. 使用Trinamic TMC2300步进驱动器做一个迪斯科灯项目
  14. nmap+nagios
  15. 盘点Sui生态20个值得关注的项目,其中8个已进入测试阶段
  16. 浅谈JVM(面试常考)
  17. 蓝桥杯嵌入式史上最全最详细教程教你快速入门
  18. PS学习笔记二:跟着李涛学PS第二讲——绘画与修饰工具
  19. Camtasia2023简体中文版屏幕录像 支持MP4/AVI/WMV等多种格式
  20. ctfshow爆破wp

热门文章

  1. android读取外部图片,Android读取本地图库与调用摄像头拍摄
  2. macos mysql 阿帕奇_Mac配置apache,mysql
  3. pandas to_dict 的用法
  4. gcc - lm的含义
  5. XShell常用快捷键
  6. 基于curl的php多线程类(异步请求)
  7. Vue报错Module not found: Error: Can‘t resolve ‘less-loader‘
  8. MySQL分区:range(范围)list(in)columns(多字段)hash(散列)key(非数值型的hash)复合(hash key)
  9. word删除分节符后之前的格式乱了_Word中这些神技,让你相见恨晚!
  10. 不是linux内核的国产系统,国产操作系统都是山寨Windows的?为何用Linux内核?