当前位置: 首页 > news >正文

python3 join_python3数据拼接——merge/join/append/concat

理解:

两个数据进行拼接,理解上需要三个要素:方向:横向 or 纵向

依据:双方各按什么键来拼接

规则:键列确定后取 交集 or 并集 or 优先某数据

分类:

按方向分类横向:merge/ join

纵向:append

综合:concat

1、merge

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)

参数解析:left/right: 数据对象

on: 用于判断拼接规则的键列,需要两个数据都有该列

left_on/right_on: left/right对象用于拼接数据的键列

left_index/right_index: 是否使用left/right对象的索引作为拼接键

how: 拼接规则,分 ’left', 'right', '外在‘,’内在‘

sort:链接键是否按字母顺序进行排序

suffixes: 两个数据对象拼接后对同列名添加后缀,默认值为('_x', '_y')

2、join

left.join(other, on=None, how='left', lsuffix='', rsuffix='',sort=False)

参数与merge类似,只是默认链接how='left'

3、append

DataFrame.append(other, ignore_index=False, verify_integrity=False, sort=None)

参数解析:other:其他数据对象

ignore_index: 默认值False,使用原标签;如果为True,则重新排列index标签

verify_integrity: 默认值为False,如果为True当创建相同的index时会抛出ValueError的异常

sort: 默认为None,我也不太懂

4、concat

pd.concat(objs, axis=0, join=‘outer’, join_axes=None, ignore_index=False,

keys=None, levels=None, names=None, verify_integrity=False, copy=True):

合并了merge(等价与axis=1) 和append(等价与axis=0) 的功能

参数解析:objs: 需要连接的对象集合

axis:连接的方向,0代表纵向, 1代表横向

join:’outer‘代表并集, ’inner‘代表交集

join_axes: 指定自定义的索引

keys:为原始DataFrame添加一个键,默认无

ignore_index:重建索引

案例:

df1 = pd.DataFrame([['a', 1], ['b', 2]], columns=['A', 0])

df2 = pd.DataFrame([['a', 1], ['b', 2]], columns=['B', 0])

df3 = pd.concat([df1, df2], join='inner')

df4 = pd.concat([df1, df2], axis=1, join_axes=[df1.index])

print(df3)

print(df4)

运行结果:

0

0 1

1 2

0 1

1 2

A 0 B 0

0 a 1 a 1

1 b 2 b 2

相关文章:

  • python tkinter详解_Python入门教程。从优秀的教程开始,学习才能名列前茅
  • [转贴]Guest权限突破
  • winform预览dwg文件_查看 CAD文件,电脑上又没装AutoCAD?这款CAD快速看图工具能帮你...
  • [转贴]ipc$详细解释大全
  • python替换txt某一行_python 怎么替换文件的某一行的某一指定字段,如果文件很大呢?...
  • 如何在html网页中嵌入一段语法高亮的代码?_让我们来学习一下这个markdown语法...
  • rundll32.exe的用途
  • 移动端日历插件_超强大 F2 移动端可视化图表方案AntV-F2
  • python代码块符号_Python代码块使用markdown语法高亮显示
  • 开始运行菜单大全
  • java 代码换行_开发简单的Java应用
  • coco 数据集_生成自己的coco数据集
  • python写网站怎么样_用Python写个在线Python的网站怎么样
  • 软件版本号大全
  • 安装了email模块还是报错_Golang 语言 beego v2 之安装和快速入门
  • 《网管员必读——网络组建》(第2版)电子课件下载
  • 【面试系列】之二:关于js原型
  • 8年软件测试工程师感悟——写给还在迷茫中的朋友
  • centos安装java运行环境jdk+tomcat
  • Create React App 使用
  • css的样式优先级
  • CSS居中完全指南——构建CSS居中决策树
  • iBatis和MyBatis在使用ResultMap对应关系时的区别
  • IndexedDB
  • Java 11 发布计划来了,已确定 3个 新特性!!
  • miniui datagrid 的客户端分页解决方案 - CS结合
  • node-sass 安装卡在 node scripts/install.js 解决办法
  • Python利用正则抓取网页内容保存到本地
  • Sass 快速入门教程
  • Spring Boot快速入门(一):Hello Spring Boot
  • vue-router 实现分析
  • vue从创建到完整的饿了么(11)组件的使用(svg图标及watch的简单使用)
  • vue学习系列(二)vue-cli
  • 海量大数据大屏分析展示一步到位:DataWorks数据服务+MaxCompute Lightning对接DataV最佳实践...
  • 近期前端发展计划
  • 腾讯视频格式如何转换成mp4 将下载的qlv文件转换成mp4的方法
  • 一起来学SpringBoot | 第三篇:SpringBoot日志配置
  • 职业生涯 一个六年开发经验的女程序员的心声。
  • "无招胜有招"nbsp;史上最全的互…
  • #{}和${}的区别?
  • #13 yum、编译安装与sed命令的使用
  • (libusb) usb口自动刷新
  • (八)光盘的挂载与解挂、挂载CentOS镜像、rpm安装软件详细学习笔记
  • (教学思路 C#之类三)方法参数类型(ref、out、parmas)
  • (四)【Jmeter】 JMeter的界面布局与组件概述
  • (四)七种元启发算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划MATLAB
  • (提供数据集下载)基于大语言模型LangChain与ChatGLM3-6B本地知识库调优:数据集优化、参数调整、Prompt提示词优化实战
  • .bat批处理(九):替换带有等号=的字符串的子串
  • .cfg\.dat\.mak(持续补充)
  • .NET CORE 第一节 创建基本的 asp.net core
  • .net 受管制代码
  • .NET4.0并行计算技术基础(1)
  • ??eclipse的安装配置问题!??
  • [ CTF ] WriteUp- 2022年第三届“网鼎杯”网络安全大赛(朱雀组)
  • [ CTF ]【天格】战队WriteUp- 2022年第三届“网鼎杯”网络安全大赛(青龙组)