pandas.concat()通常用来连接DataFrame对象。默认情况下是对两个DataFrame对象进行纵向连接, 当然通过设置参数,也可以通过它实现DataFrame对象的横向连接。

让我们通过几个例子来看看concat()的用法。

1. 纵向连接DataFrame对象

(1)两个DataFrame对象的列完全相同

# 初始化两个DataFrame对象

df1 = pd.DataFrame([['a', 1], ['b', 2]],

columns=['letter', 'number'])

df2 = pd.DataFrame([['c', 3], ['d', 4]],

columns=['letter', 'number'])

display(df1)

display(df2)

# 合并对象

pd.concat([df1, df2])

从上面的结果可以看出, concat默认纵向连接DataFrame对象, 并且合并之后不改变每个DataFrame子对象的index值, 因此我们可以在合并之后的DataFrame中看到index的值0和1重复了两次。

如果希望重新设置合并之后的DataFrame对象的index值, 可以添加ignore_index=True参数:

pd.concat([df1, df2], ignore_index=True)

(2) 两个DataFrame对象的列不完全相同

# 初始化DataFrame对象

df1 = pd.DataFrame([['a', 1], ['b', 2]],

columns=['letter', 'number'])

df3 = pd.DataFrame([['c', 3, 'cat'], ['d', 4, 'dog']],

columns=['letter', 'number', 'animal'])

display(df1)

display(df3)

# 合并对象

pd.concat([df1, df3], sort=False) # sort=False : 列的顺序维持原样, 不进行重新排序。

从结果可以看到, 因为df1中没有animal列, 所以在合并之后的DataFrame对象里, 所对应的元素都被设置成了NaN。

如果只想合并相同的列, 我们可以添加上join='inner'参数:

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

2. 横向合并DataFrame对象

通过设置axis=1, 可以横向合并两个DataFrame对象。

# 初始化DataFrame对象

df1 = pd.DataFrame([['a', 1], ['b', 2]],

columns=['letter', 'number'])

df4 = pd.DataFrame([['bird', 'polly'], ['monkey', 'george']],

columns=['animal', 'name'])

display(df1)

display(df4)

# 合并对象

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

从上面的结果可以看出,通过设置axis=1参数,我们实现了df1和df4两个DataFrame对象的合并。

以上就是关于pandas.concat()函数用法的简单介绍。

参考资料

python中concat的用法_pandas中concat()的用法相关推荐

  1. python中columns用法_pandas中DataFrame修改index、columns名的方法示例

    一般常用的有两个方法: 1.使用DataFrame.index = [newName],DataFrame.columns = [newName],这两种方法可以轻松实现. 2.使用rename方法( ...

  2. python查看各列数据类型_pandas中查看数据类型的几种方式

    在获得数据之后.分析数据之前,我们一般需要对数据总体进行一个概览,如有哪些字段,每个字段的类型,值是否缺失等,以下列出了几种方法,供我们方便快捷的查看dataframe的数据类型. 1.维度查看:df ...

  3. python pandas csv时间聚合_pandas中简单统计分组聚合函数的介绍

    说明: 这里只是简单的说明了一些pandas中的一些我在毕设中使用到的函数,这个 模块的并未具体其他的一些功能并未详细的进行说明. pandas 简单介绍 Python语言的Pandas模块是一种高效 ...

  4. python遍历dataframe中的每个字符_pandas中遍历dataframe的每一个元素的实现

    假如有一个需求场景需要遍历一个csv或excel中的每一个元素,判断这个元素是否含有某个关键字 那么可以用python的pandas库来实现. 方法一: pandas的dataframe有一个很好用的 ...

  5. python如何按列输出_pandas中的DataFrame按指定顺序输出所有列的方法

    问题: 输出新建的DataFrame对象时,DataFrame中各列的显示顺序和DataFrame定义中的顺序不一致. 例如: import pandas as pd grades = [48,99, ...

  6. pandas中drop用法_pandas中drop()函数用法

    函数定义:DataFrame.drop(labels=None,axis=0, index=None, columns=None, inplace=False) 删除单个行 import pandas ...

  7. python中split函数源代码_Pandas.split()函数用法及源码

    Pandas.split()函数用法及源码 发布时间:2018-05-08 10:44, 浏览次数:1092 , 标签: Pandas split Python数据分析博文汇总 * Pandas重复值 ...

  8. python的concat用法_python的concat等多种用法详解

    本文为大家分享了python的concat等多种用法,供大家参考,具体内容如下 1.numpy中的concatenate()函数: >>> a = np.array([[1, 2], ...

  9. Python中的map()函数和reduce()函数的用法

    Python中的map()函数和reduce()函数的用法 这篇文章主要介绍了Python中的map()函数和reduce()函数的用法,代码基于Python2.x版本,需要的朋友可以参考下  

最新文章

  1. ScheduledThreadPool中的Leader-Follow模式你知道不?
  2. python stm32-STM32F4系列使用MicroPython开发
  3. UA OPTI512R 傅立叶光学导论5 光学常用基本函数回顾
  4. Android代码实现新建文件夹,并将文件保存到新建的文件夹中
  5. ubuntu系统靠谱的清理内存的方法(can not allocate memory 问题)
  6. 多线程与高并发(六):线程池可用的各种高并发容器详解:CopyOnWriteList,BlockingQueue等
  7. r语言系统计算上是奇异的_R语言实现并行计算
  8. “约见”面试官系列之常见面试题之第一百零八篇之如何获取dom(建议收藏)
  9. python实现arxiv论文数据解析处理
  10. 20200125每日一句
  11. 磁碟机病毒***猖獗教你应对方法
  12. Java 上传附件后端接口大体流程和逻辑
  13. 批处理为win7桌面添加计算机图标,WIN7桌面显示IE图标批处理
  14. 沉默是否是无言的抗争
  15. 大数据学习计划(不断改善)(小白入门指南)
  16. linux 端口不通,linux的端口不通怎么解决
  17. 电脑中文件名称字体变颜色怎么解决,由黑色变成蓝色了。。。。。。
  18. Nuxt SSR 服务端渲染 详解
  19. 【2019/07/20测试 T2】切题
  20. 基于matlab的全阶观测器三自由度运动系统状态反馈控制系统的仿真

热门文章

  1. 山野户外定位依赖GPS或者卫星电话就能完成么?
  2. python编程比赛初赛 组成最小罗马数字_leetcode 题解 12python3@ 通过使用罗马数字的最单元位来构造数组 + 构造数字算法...
  3. 怎么理解数据湖?(深度长文)
  4. servlet 中的ServletConfig与servletContext
  5. DSS 代码分析【服务器架构】
  6. 锚定品质,金科走出清晰的“产品主义”路径
  7. 关于产品的一些思考——猎云网
  8. 小程序公众号的微信支付0.2%费率商户号是怎么降低的?
  9. 安装语音计算机到桌面,桌面百度推出 语音搜索技术让电脑听“人话”
  10. 将字符串,数组等任意格式转为json(JSON)数据,Arrays是数组工具类,将任意数组转字符串或数组操作