pd.merge() 是 pandas 库中一个用于合并两个数据集 (DataFrame) 的函数。它提供了灵活的合并方式,可以根据不同的需求选择合适的连接类型,例如内连接、外连接、左连接和右连接。

pd.merge() 函数参数详解

pd.merge(left, right, how='inner', on=None, left_on=None, right_on=None, left_index=False, right_index=False, sort=True, suffixes=('_x', '_y'), copy=True, indicator=False)

参数说明:

  • left: 要合并的左侧 DataFrame。
  • right: 要合并的右侧 DataFrame。
  • how: 合并方式,包括 'inner' (内连接)、'outer' (外连接)、'left' (左连接) 和 'right' (右连接),默认值为 'inner'。
  • on: 要进行合并的列名。如果左右两个 DataFrame 的列名不同,可以使用 left_onright_on 参数指定左右两个 DataFrame 中要进行合并的列名。
  • left_on: 左侧 DataFrame 中用于合并的列名。
  • right_on: 右侧 DataFrame 中用于合并的列名。
  • left_index: 是否使用左侧 DataFrame 的索引进行合并。
  • right_index: 是否使用右侧 DataFrame 的索引进行合并。
  • sort: 是否对合并后的 DataFrame 进行排序。
  • suffixes: 如果左右两个 DataFrame 中存在相同的列名,可以通过 suffixes 参数指定在合并后的列名上添加的后缀。
  • copy: 是否复制数据,默认值为 True。
  • indicator: 是否在合并后的 DataFrame 中添加一个特殊的列,用于指示每行的合并方式。

示例代码

import pandas as pd

# 创建两个 DataFrame
df1 = pd.DataFrame({'key': ['A', 'B', 'C', 'D'],
                    'value1': [1, 2, 3, 4]})
df2 = pd.DataFrame({'key': ['B', 'D', 'E', 'F'],
                    'value2': [5, 6, 7, 8]})

# 使用 pd.merge() 进行合并
merged_df = pd.merge(df1, df2, on='key', how='inner')

print(merged_df)

输出结果:

  key  value1  value2
0   B       2       5
1   D       4       6

以上代码中,通过 pd.merge() 将 df1 和 df2 按照 'key' 列进行内连接合并,得到的合并后的 DataFrame 中只包含两个共同的 'key' 值 ('B' 和 'D') 所对应的行。

总结

pd.merge() 是一个强大的工具,可以帮助您轻松合并两个 DataFrame,并根据不同的需求选择合适的连接类型。通过理解参数和示例代码,您将能够更有效地处理数据。

Pandas merge() 函数详解:Python 数据合并利器

原文地址: https://www.cveoy.top/t/topic/lSbo 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录