首页 > 后端开发 > Python教程 > 如何执行不同类型的 Pandas DataFrame 连接?

如何执行不同类型的 Pandas DataFrame 连接?

Mary-Kate Olsen
发布: 2024-12-26 10:56:14
原创
747 人浏览过

How Do I Perform Different Types of Pandas DataFrames Joins?

Pandas 合并 101:基础知识

连接 DataFrame

在 Pandas 中合并 DataFrame 涉及基于公共键列组合两个或多个 DataFrame。连接有多种类型,包括:

  • INNER JOIN: 仅返回两个 DataFrame 中键匹配的行。

    • df1 .merge(df2, on='key', how='inner')
  • LEFT JOIN: 包括左侧 DataFrame 中的所有行以及右侧 DataFrame 中的匹配行。右侧缺失的值用 NaN 填充。

    • df1.merge(df2, on='key', how='left')
  • RIGHT JOIN: 包含右侧 DataFrame 中的所有行以及来自右侧 DataFrame 的匹配行左数据框。左侧缺失的值用 NaN 填充。

    • df1.merge(df2, on='key', how='right')
  • 完整外部连接: 包括两个 DataFrame 中的所有行,填充缺失的行带有 NaN 的值。

    • df1.merge(df2, on='key', how='outer')

不同的键列名称

如果键列有不同的名称,请使用 left_on 和 right_on参数:

  • df1.merge(df2, left_on='key1', right_on='key2', how='inner')

避免输出中出现重复的键列

对不同键列进行合并时,将索引设置为初步索引步骤:

  • df1.set_index('key1').merge(df2, left_index=True, right_on='key2')

合并多列

通过将列表传递给 on (或 left_on 和right_on):

  • df1.merge(df2, on=['key1', 'key2'], how='inner')

泛化到多个 DataFrame

要合并多个 DataFrame,请使用 pd.merge_asof 进行近似连接或pd.merge_ordered 用于有序连接。

以上是如何执行不同类型的 Pandas DataFrame 连接?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板