作者:来源于读者投稿

出品:Python数据之道

一文搞定pandas的数据合并

在实际处理数据业务需求中,我们经常会遇到这样的需求:将多个表连接起来再进行数据的处理和分析,类似SQL中的连接查询功能

pandas中也提供了几种方法来实现这个功能,表现最突出、使用最为广泛的方法是merge。本文中将下面????四种方法及参数通过实际案例来进行具体讲解。

  • merge

  • append

  • join

  • concat

为方便大家练习,文末提供了本文源代码的获取方式。

文章目录

导入库

做数据分析的时候这两个库是必须导入的,国际惯例一般。

import pandas as pd
import numpy as np

—  01 

merge

官方参数

官方提供的 merge函数的参数如下:

下面将通过案例讲解几个重要参数的使用方法:

DataFrame.merge(left, right, how='inner',   # {‘left’, ‘right’, ‘outer’, ‘inner’}, default ‘inner’on=None, left_on=None, right_on=None, sort=False, suffixes=('_x', '_y'))

模拟数据

注意4组数据的不同

使用默认参数

两种不同的写法,效果相同

参数how

how参数的取值有4种:

  • inner(默认)

  • outer

  • right

  • left

参数on

用于连接的列索引列名,必须同时存在于左右的两个dataframe型数据中,类似SQL中两个表的相同字段属性

如果没有指定或者其他参数也没有指定,则以两个dataframe型数据的相同键作为连接键

on参数为单个字段

另一个例子:

on参数为多个字段-列表形式

参数lefton/righton

参数suffixes

合并的时候一列两个表同名,但是取值不同,如果都想要保存下来,就使用加后缀的方法,默认是 _x,_y,可以自己指定

参数sort

对连接的时候相同键的取值进行排序

—  02 

concat

官方参数

concat方法是将两个 DataFrame数据框中的数据进行合并

  • 通过axis参数指定是在行还是列方向上合并

  • 参数 ignore_index实现合并后的索引重排

生成数据

指定合并轴

改变索引

join参数

sort-属性排序

—  03 

append

官方参数

基本使用

data3.append(data4)   # 等同于pd.append([data3, data4])  忽略pandas版本的警告

改变索引-自然数排序

data3.append(data4, ignore_index=True)  # 设置参数

sort=True-属性的排序

data3.append(data4)   # 默认对字段属性排序

—  04 

join

官方参数

通过相同索引合并

相同字段属性指后缀

相同字段变成索引index

相同字段保留一次

为方便大家练习,可以在公号「Python数据之道」后台回复  “20200917” 获取本文的源代码文件。

---------End---------

关注后回复“w”,加我私人微信

分享”和“在看”是更好的支持!

一文搞定pandas的数据合并相关推荐

  1. 【Python基础】一文搞定pandas的数据合并

    作者:来源于读者投稿 出品:Python数据之道 一文搞定pandas的数据合并 在实际处理数据业务需求中,我们经常会遇到这样的需求:将多个表连接起来再进行数据的处理和分析,类似SQL中的连接查询功能 ...

  2. 一文搞定Pandas中的数据合并

    一文搞定pandas的数据合并 在实际处理数据业务需求中,我们经常会遇到这样的需求:将多个表连接起来再进行数据的处理和分析,类似SQL中的连接查询功能. pandas中也提供了几种方法来实现这个功能, ...

  3. 一文搞定Qt读写excel以及qt读写xml数据

    一文搞定Qt读写excel以及qt读写xml数据 最终的实现效果图 RC_ICONS = logo.ico .pro文件同级目录下加入 logo.ico 图标文件,运行文件,文件的图标就被写入软件 u ...

  4. python使用教程pandas-十分钟搞定pandas(入门教程)

    本文是对pandas官方网站上<10Minutes to pandas>的一个简单的翻译,原文在这里.这篇文章是对pandas的一个简单的介绍,详细的介绍请参考:Cookbook .习惯上 ...

  5. pandas 批量修改列名_十分钟想搞定pandas?

    用Python做数据分析,Numpy,Pandas,matplotlib是怎么也绕不开的三个包,我最开始学习pandas是看的<利用Python进行数据分析>,看了好几遍,不是从头到尾看了 ...

  6. 一文搞定B站弹幕生成云图

    一文搞定B站弹幕生成云图 最近学了词云图, 感觉非常有趣,我们做一些图试试, 最近我们遭受了新冠疫情 , 关于这个点,去看看b站弹幕都在说什么? B站的弹幕接口 直接从B站某视频源中找半天没找到弹幕的 ...

  7. 【量化交易行情不够快?】一文搞定通过Win10 wsl2 +Ubuntu+redis+pickle实现股票行情极速读写

    一文搞定通过Win10 wsl2 +Ubuntu+redis+pickle实现股票行情极速读写 前言 一.准备环境分四步 1.1 给Win10装wsl2 硬件开启虚拟化 软件开启虚拟化及安装适用于Li ...

  8. 一文搞定 Spring Data Redis 详解及实战

    转载自  一文搞定 Spring Data Redis 详解及实战 SDR - Spring Data Redis的简称. Spring Data Redis提供了从Spring应用程序轻松配置和访问 ...

  9. 一文搞定面试中的二叉树问题

    一文搞定面试中的二叉树问题 版权所有,转载请注明出处,谢谢! http://blog.csdn.net/walkinginthewind/article/details/7518888 树是一种比较重 ...

最新文章

  1. 追溯了解Ubuntu之------基本命令操作(叁)
  2. 思考灰鸽子之后,新***的运营模式
  3. 会声会影导出视频为原视频分辨率(没有黑边的技巧)
  4. 中文 Python 开源资料合集!这应该是最全的了!
  5. misc高阶 攻防世界_攻防世界 Misc 进阶题(一)
  6. LinkDevelop平台新建一个产品
  7. 57、vi常见用法,tags
  8. 【二分答案】Problem C:木材加工
  9. 面试经验分享|精华版
  10. 罗永浩带货520鲜花礼盒再翻车:自掏腰包100多万,双倍赔偿
  11. 能大大提升工作效率和时间效率的9个重要习惯
  12. oracle10g 数据源管理器找不到应用程序,可能是程序没有正确安装问题解决
  13. (转)价值杂志:推荐阅读投资理财经典55本(上篇)
  14. linux系统下的图书管理系统,LINUX下基于SOAP的图书管理系统的研究与实现
  15. 在线作图丨数据降维分析④——NMDS分析
  16. 概率统计基础(一): 随机变量与随机事件
  17. 机器人感知-视觉部分(Robotic Perception-Vision Section)
  18. 20小时写一篇文章,好看到爆炸的手机壁纸都在这些App里!
  19. 全球及中国物流中心产业运营价值与投资可行性研究报告2022版
  20. linux用户、组的创建

热门文章

  1. 《毕 业 论 文 致 谢 大 赏》
  2. ant design pro v2 - 权限控制
  3. 力扣209. 长度最小的子数组
  4. 无线MESH自组网系统
  5. 【Android系列1.0 驱动开发 --- Linux 驱动 内核】
  6. 如何使用TestFlight发布和安装测试版的app
  7. 怎样禁止“Windows - 没有软盘”的提示?
  8. Redis6——入门介绍
  9. ios共享账号公众号_forest 专注森林 ios下载账号分享 公众号 iphone ipad
  10. Android studio打包签名报错:Error:(3) Error: app_name is not translated in am (Amharic);