Pandas实现按照时间维度合并多张表

 更新时间:2025年09月02日 08:48:10   作者:羊肉串儿加点辣  
文章对比了Pandas中pd.merge()与pd.concat()的拼接方法,指出merge()通过索引合并更灵活,而concat()为硬性拼接,随后使用sort_index()解决索引排序问题,最终实现两表按时间值正确合并

1.数据样式和目标

1.1 数据样式

  • A表:
timevalue
1996-1-1111
1996-1-2222
1996-1-6333
1996-1-10444
  • B表:
timevalue
1996-1-2555
1996-1-5666
1996-1-11777
1996-1-12888

1.2 拼接目标样式

timevalue_Avalue_B
1996-1-1111null
1996-1-2222555
1996-1-5null666
1996-1-6333null
1996-1-10444null
1996-1-11null777
1996-1-12null888

2. 拼接方法

我尝试了pd.merge()和pd.concat()这两种方法,发现pd.merge()才是我想要的拼接形式,按索引拼接;

而pd.concat()属于硬性拼接,只会把双方的第一行第二行拼接一起。

2.1 pd.merge()

df = pd.merge(left=left_df, right=right_df, how='outer', on='time')
  • 拼接结果为:
timevalue_Avalue_B
1996-1-1111null
1996-1-2222null
1996-1-6333null
1996-1-10444null
1996-1-2null555
1996-1-5null666
1996-1-11null777
1996-1-12null888

2.2 df.sort_index()

为了将上述数据处理成我们想要的格式,我尝试了df.groupby(),发现只能是DataframeGroupBy对象,而非我们想要的Dataframe,转换非常麻烦;

后来发现了df.sort_index()方法,按照索引排序,解决!

df = df.sort_index()
  • 代码结果为:
timevalue_Avalue_B
1996-1-1111null
1996-1-2222555
1996-1-5null666
1996-1-6333null
1996-1-10444null
1996-1-11null777
1996-1-12null888

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • python实现Pyecharts实现动态地图(Map、Geo)

    python实现Pyecharts实现动态地图(Map、Geo)

    这篇文章主要为大家详细介绍了python实现Pyecharts实现动态地图,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-03-03
  • python单例模式的多种实现方法

    python单例模式的多种实现方法

    这篇文章主要介绍了python单例模式的多种实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-07-07
  • 基于Python Watchdog库实现文件系统监控

    基于Python Watchdog库实现文件系统监控

    Watchdog是一个优秀的Python库,用于监控文件系统事件,本文将介绍Watchdog的基本用法,并通过一个实际案例展示如何用它来监控下载目录并自动转换ICO文件为PNG格式
    2025-07-07
  • Python操作Spark常用命令指南

    Python操作Spark常用命令指南

    Python操作Spark的常用命令指南,涵盖从环境配置到数据分析的核心操作,本文介绍了如何使用PySpark进行环境配置和核心操作,包括数据读写、处理与转换、聚合与高级分析,以及运行SQL查询和性能优化,感兴趣的朋友跟随小编一起看看吧
    2026-02-02
  • Python从单元素字典中获取key和value的实例

    Python从单元素字典中获取key和value的实例

    今天小编就为大家分享一篇Python从单元素字典中获取key和value的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-12-12
  • python数据结构树和二叉树简介

    python数据结构树和二叉树简介

    这篇文章主要介绍了python数据结构树和二叉树简介,需要的朋友可以参考下
    2014-04-04
  • 详解python中各种文件打开模式

    详解python中各种文件打开模式

    在python中,总的来说有三种大的模式打开文件,分别是:a, w, r,这篇文章主要介绍了python中各种文件打开模式,需要的朋友可以参考下
    2020-01-01
  • Python Pandas处理结构化数据的核心技巧

    Python Pandas处理结构化数据的核心技巧

    在数据驱动的时代,结构化数据是分析决策的基础,本文将以真实场景为线索,通过代码示例和操作逻辑解析,带你掌握Pandas处理结构化数据的核心方法
    2025-09-09
  • DRF使用simple JWT身份验证的实现

    DRF使用simple JWT身份验证的实现

    这篇文章主要介绍了DRF使用simple JWT身份验证,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • 用于ETL的Python数据转换工具详解

    用于ETL的Python数据转换工具详解

    这篇文章主要介绍了用于ETL的Python数据转换工具,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-07-07

最新评论