pandas中的merge函数用于将两个DataFrame对象按照一定规则进行合并操作。具体用法如下:

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, validate=None)

其中,各参数的含义如下:

  • left:要合并的左侧DataFrame对象。
  • right:要合并的右侧DataFrame对象。
  • how:合并方式,默认为'inner'。可选值为'left'、'right'、'outer'、'inner'。
  • on:合并的列名(如果左右两个DataFrame的该列名不同,需要使用left_on和right_on进行指定)。
  • left_on:左侧DataFrame对象中用作合并键的列名。
  • right_on:右侧DataFrame对象中用作合并键的列名。
  • left_index:将左侧DataFrame对象的索引用作合并键。
  • right_index:将右侧DataFrame对象的索引用作合并键。
  • sort:根据合并键对合并后的数据进行排序,默认为True。
  • suffixes:如果左右两个DataFrame对象中存在重复的列名,需要使用suffixes指定重复的列名的后缀。默认为('_x', '_y')。
  • copy:是否将合并后的数据复制一份,默认为True。
  • indicator:是否在合并后的数据中添加一列指示数据来源。默认为False。
  • validate:用于检查合并的数据是否符合要求。可选值为'one_to_one'、'one_to_many'、'many_to_one'、'many_to_many'。

举个例子,下面的代码演示了如何将两个DataFrame对象按照'key'列进行合并:

import pandas as pd

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

# 按照'key'列进行合并
result = pd.merge(df1, df2, on='key')

print(result)

输出结果为:

  key  value_x  value_y
0   B        2        5
1   D        4        6

可以看到,合并后的结果中只包含'key'列中存在的行,并且合并后的结果中包含了原始数据中的'value_x'和'value_y'列,分别表示左右两个DataFrame对象中的'value'列。

pandas中merge的用法

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

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