将不同的数据源进行合并 , 类似数据库 join merge .
工具函数
concat / append
pd.concat() 简易合并
- 合并高维数据
默认按行合并。 axis=0 ,试试 axis = 1
索引重复
结果中,索引是重复的。 这可能并不是我们想要的结果。
1)捕捉索引重复的错误。 verify_integrity=True
忽略索引 ignore_index=True, 会新建索引。
增加多级索引,通过keys参数为 数据源设置多级索引标签。
类似join的合并
当数据源 带有 不同的 列名 。
位置上缺失的参数会用NaN表示。可以使用join 和 join_axes(老版本)参数设置合并方式。
默认的合并方式是对所有输入列进行并集合并:join = outer .
对输入列进行交集合并: join = inner
另一种,直接确定结果使用的列名。老版本是由join_axes参数。新版本使用merge方法了。
append方法
合并与连接
关系代数
pd.merge()实现的功能基于关系代数。 relational algebra ,关系代数式处理关系数据的通用理论。
数据连接的三种类型
-
一对一连接
俩个df都有employee列,自动以这列作为键 进行连接。 -
多对一连接
有一列的值有重复。 会保留重复值。
-
多对多连接
共同列 都有重复值 。
设置数据合并的键
参数on。 设置为一个列名字符串,或者包含列名称 的列表,俩个数据源有共同的列名
left_on 与 right_on 。俩个数据源的列名不同。
获取到的结果有多余的列。使用drop()方法将这列去掉。
left_index 与 right_index。 合并索引 。
简单的方法,join()方法按照索引进行合并。
索引与列混合使用。
设置数据连接的集合操作规则
默认是内连接 inner join. 取共同列的交集。
内连接 inner join
外连接 outer join
左连接 left join
右连接 right join
数据源有多个 重复的列名。
默认自动会增加后缀。
使用suffixex参数
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异