pandas.merge_
时间: 2023-07-25 11:37:15 浏览: 160
pandas.merge()是pandas中将数据进行合并的函数,将两个DataFrame对象按照一个或多个键进行合并。merge()函数的基本语法为:
```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:连接方式,取值为'left','right','outer','inner';
- on:连接所根据的列或者索引级别名称,必须在左侧和右侧DataFrame对象中存在;
- left_on:左侧DataFrame对象中用作连接键的列;
- right_on:右侧DataFrame对象中用作连接键的列;
- left_index:如果为True,则使用左侧DataFrame对象中的索引作为连接键;
- right_index:如果为True,则使用右侧DataFrame对象中的索引作为连接键;
- suffixes:用于追加到重叠列名的字符串;
- sort:按照连接键对合并后的数据进行排序,默认为True;
- copy:如果为False,则避免将数据复制;
- indicator:如果为True,则将合并的方式添加为新的一列到输出数据中。
使用示例:
```python
import pandas as pd
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]})
# 内连接
result_inner = pd.merge(df1, df2, on='key', how='inner')
print(result_inner)
# 左连接
result_left = pd.merge(df1, df2, on='key', how='left')
print(result_left)
# 右连接
result_right = pd.merge(df1, df2, on='key', how='right')
print(result_right)
# 外连接
result_outer = pd.merge(df1, df2, on='key', how='outer')
print(result_outer)
```
输出结果:
```python
key value_x value_y
0 B 2 5
1 D 4 6
key value_x value_y
0 A 1 NaN
1 B 2 5.0
2 C 3 NaN
3 D 4 6.0
key value_x value_y
0 B 2.0 5
1 D 4.0 6
2 E NaN 7
3 F NaN 8
key value_x value_y
0 A 1.0 NaN
1 B 2.0 5.0
2 C 3.0 NaN
3 D 4.0 6.0
4 E NaN 7.0
5 F NaN 8.0
```
以上就是pandas.merge()函数的基本用法和示例。
阅读全文