0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

pandas中合并数据的5个函数

科技绿洲 来源:Python实用宝典 作者:Python实用宝典 2023-10-31 11:11 次阅读

今天借着这个机会,就为大家盘点一下pandas中合并数据的5个函数。

join

join是基于索引的横向拼接,如果索引一致,直接横向拼接。如果索引不一致,则会用Nan值填充。

索引一致

x = pd.DataFrame({'A': ['A0', 'A1', 'A2'],
'B': ['B0', 'B1', 'B2']},
index=[0, 1, 2])
y = pd.DataFrame({'C': ['C0', 'C2', 'C3'],
'D': ['D0', 'D2', 'D3']},
index=[0, 1, 2])
x.join(y)

结果如下:

图片

索引不一致

x = pd.DataFrame({'A': ['A0', 'A1', 'A2'],
'B': ['B0', 'B1', 'B2']},
index=[0, 1, 2])
y = pd.DataFrame({'C': ['C0', 'C2', 'C3'],
'D': ['D0', 'D2', 'D3']},
index=[1, 2, 3])
x.join(y)

结果如下:

图片

merge

merge是基于指定列的横向拼接,该函数类似于关系型数据库的连接方式,可以根据一个或多个键将不同的DatFrame连接起来。该函数的典型应用场景是,针对同一个主键存在两张不同字段的表,根据主键整合到一张表里面。

  • 可以指定不同的how参数,表示连接方式,有inner内连、left左连、right右连、outer全连,默认为inner;
x = pd.DataFrame({'姓名': ['张三', '李四', '王五'],
'班级': ['一班', '二班', '三班']})
y = pd.DataFrame({'专业': ['统计学', '计算机', '绘画'],
'班级': ['一班', '三班', '四班']})

pd.merge(x,y,how="left")

结果如下:

图片

concat

concat函数既可以用于横向拼接,也可以用于纵向拼接。

纵向拼接

x = pd.DataFrame([['Jack','M',40],['Tony','M',20]], columns=['name','gender','age'])
y = pd.DataFrame([['Mary','F',30],['Bob','M',25]], columns=['name','gender','age'])
z = pd.concat([x,y],axis=0)
z

结果如下:

图片

横向拼接

x = pd.DataFrame({'姓名': ['张三', '李四', '王五'],
'班级': ['一班', '二班', '三班']})
y = pd.DataFrame({'专业': ['统计学', '计算机', '绘画'],
'班级': ['一班', '三班', '四班']})
z = pd.concat([x,y],axis=1)
z

结果如下:

图片

append

append主要用于纵向追加数据。

x = pd.DataFrame([['Jack','M',40],['Tony','M',20]], columns=['name','gender','age'])
y = pd.DataFrame([['Mary','F',30],['Bob','M',25]], columns=['name','gender','age'])
x.append(y)

结果如下:

图片

combine

conbine可以通过使用函数,把两个DataFrame按列进行组合。

x = pd.DataFrame({"A":[3,4],"B":[1,4]})
y = pd.DataFrame({"A":[1,2],"B":[5,6]})
x.combine(y,lambda a,b:np.where(a>b,a,b))

结果如下:

图片

注:上述函数,用于返回对应位置上的最大值。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 数据
    +关注

    关注

    8

    文章

    7010

    浏览量

    88978
  • 函数
    +关注

    关注

    3

    文章

    4329

    浏览量

    62585
  • 索引
    +关注

    关注

    0

    文章

    59

    浏览量

    10468
收藏 人收藏

    评论

    相关推荐

    Pandas的四种绘图函数

    数据可视化(三):Pandas的绘图函数
    发表于 09-04 09:04

    从Excel到Python-最常用的36Pandas函数

    本文涉及pandas最常用的36函数,通过这些函数介绍如何完成数据生成和导入、数据清洗、预处理
    的头像 发表于 12-10 21:31 688次阅读

    Python工具pandas筛选数据的15常用技巧

    pandas是Python数据分析必备工具,它有强大的数据清洗能力,往往能用非常少的代码实现较复杂的数据处理 今天,总结了pandas筛选
    的头像 发表于 03-30 10:44 2886次阅读
    Python工具<b class='flag-5'>pandas</b>筛选<b class='flag-5'>数据</b>的15<b class='flag-5'>个</b>常用技巧

    盘点Pandas的100常用函数

    分析过程,必然要做一些数据的统计汇总工作,那么对于这一块的数据运算有哪些可用的函数可以帮助到我们呢?具体看如下几张表。 import pandas
    的头像 发表于 04-01 09:52 2842次阅读
    盘点<b class='flag-5'>Pandas</b>的100<b class='flag-5'>个</b>常用<b class='flag-5'>函数</b>

    数据处理pandas的groupby小技巧

    pandas的groupby是数据处理中一非常强大的功能。虽然很多同学已已经非常熟悉了,但有些小技巧还是要和大家普及一下的。为了给大家演示,我们采用一公开的
    的头像 发表于 04-09 11:34 2362次阅读

    分享pandas超级好用的str矢量化字符串函数

    数据清洗方法,会让你的能力调高100倍。 本文基于此, 讲述pandas超级好用的str矢量化字符串函数 ,学了之后,瞬间感觉自己的数据
    的头像 发表于 04-13 10:37 2566次阅读
    分享<b class='flag-5'>pandas</b><b class='flag-5'>中</b>超级好用的str矢量化字符串<b class='flag-5'>函数</b>

    解读12 种 Numpy 和 Pandas 高效函数技巧

    本文分享给大家 12 种 Numpy 和 Pandas 函数,这些高效的函数会令数据分析更为容易、便捷。最后,读者也可以在 GitHub 项目中找到本文所用代码的 Jupyter No
    的头像 发表于 06-29 17:05 1499次阅读

    5必须知道的Pandas数据合并技巧

    concat是pandas中专门用于数据连接合并函数,功能非常强大,支持纵向合并和横向合并,默
    的头像 发表于 04-13 10:35 2330次阅读

    Pandas中使用Merge、Join、Concat合并数据的效率对比

    Pandas 中有很多种方法可以进行DF的合并
    的头像 发表于 10-25 14:24 938次阅读

    Pandas 50高级、高频操作

    数据分析和数据建模的过程需要对数据进行清洗和整理等工作,有时需要对数据增删字段。下面为大家介绍Pan
    的头像 发表于 04-24 11:00 842次阅读

    超强图解Pandas,建议收藏

    Pandas数据挖掘常见的工具,掌握使用过程函数是非常重要的。本文将借助可视化的过程,讲解Pandas的各种操作。
    的头像 发表于 08-29 15:15 622次阅读
    超强图解<b class='flag-5'>Pandas</b>,建议收藏

    如何使用Python和pandas库读取、写入文件

    = pd.read_excel(' data .xlsx') 此代码,我们首先导入 pandas 库并将其重命名为 pd。使用 pd.read_excel() 函数读取 'data.xlsx' 文件并将其存储在
    的头像 发表于 09-11 17:52 1192次阅读

    盘点66Pandas函数合集

    今天我们重新盘点66Pandas函数合集,包括数据预览、数值数据操作、文本数据操作、行/列操作
    的头像 发表于 10-30 09:58 1420次阅读
    盘点66<b class='flag-5'>个</b><b class='flag-5'>Pandas</b><b class='flag-5'>函数</b>合集

    Pandas:Python中最好的数据分析工具

    使用 Pandas 分析数据的能力。 常见的比如说: 在处理货币值时使用货币符号。例如,如果您的数据包含值 25.00,您不会立即知道该值是人民币、美元、英镑还是其他某种货币。 百分比是另一
    的头像 发表于 10-31 10:47 490次阅读
    <b class='flag-5'>Pandas</b>:Python中最好的<b class='flag-5'>数据</b>分析工具

    Pandas函数的三接口介绍

    本文主要介绍pandas.DataFrame的三接口,即assign、eval、query,分别用于赋值、查询和执行计算。 01 assign 在数据分析处理,赋值产生新的列是非常
    的头像 发表于 11-01 16:38 471次阅读
    <b class='flag-5'>Pandas</b><b class='flag-5'>函数</b>的三<b class='flag-5'>个</b>接口介绍