pd.merge()函数的用法
时间: 2023-08-16 13:14:20 浏览: 112
pd.merge()函数是 pandas 库中的一个函数,用于将两个 DataFrame 对象合并成一个新的 DataFrame 对象。其基本语法如下:
```python
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'(内连接,默认值)、'outer'(外连接)、'left'(左连接)、'right'(右连接)。
- `on`:用于合并的列名,必须在左侧和右侧 DataFrame 对象中都存在。
- `left_on`:左侧 DataFrame 对象中用于合并的列名。
- `right_on`:右侧 DataFrame 对象中用于合并的列名。
- `left_index`:是否使用左侧 DataFrame 对象中的索引作为合并键。
- `right_index`:是否使用右侧 DataFrame 对象中的索引作为合并键。
- `sort`:是否对合并结果按照合并键进行排序。
- `suffixes`:如果左侧和右侧 DataFrame 对象中存在相同的列名,则在列名后添加后缀区分。
- `copy`:是否复制合并前的数据。
- `indicator`:是否在合并结果中添加一个特殊的列,用于表示每一行的来源是左侧 DataFrame、右侧 DataFrame 还是两个 DataFrame 都有。
- `validate`:是否检查合并键是否存在于左侧和右侧 DataFrame 对象中。
例如,下面的代码将按照 'key' 列将两个 DataFrame 对象合并:
```python
import pandas as pd
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]})
merged_df = pd.merge(df1, df2, on='key')
print(merged_df)
```
输出结果为:
```
key value1 value2
0 B 2 5
1 D 4 6
```
其中,合并结果只包含 'key' 列在两个 DataFrame 对象中都存在的行。
阅读全文