python将几个df合并
时间: 2024-02-11 12:27:56 浏览: 26
在Python中,你可以使用 pandas 库中的 `concat`、`merge` 或 `join` 函数来合并多个 DataFrame。
1. `concat` 函数用于按照指定的轴将多个 DataFrame 连接在一起。你可以指定连接的轴(行或列),默认为行连接。
```python
import pandas as pd
# 创建两个示例 DataFrame
df1 = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
df2 = pd.DataFrame({'A': [7, 8, 9], 'B': [10, 11, 12]})
# 按行连接两个 DataFrame
result = pd.concat([df1, df2], axis=0) # axis=0 是默认值,表示按行连接
print(result)
```
2. `merge` 函数用于根据某些键将两个 DataFrame 进行合并。这类似于 SQL 中的 JOIN 操作。
```python
import pandas as pd
# 创建两个示例 DataFrame
df1 = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6], 'key': ['K1', 'K2', 'K3']})
df2 = pd.DataFrame({'C': [7, 8, 9], 'D': [10, 11, 12], 'key': ['K1', 'K2', 'K4']})
# 根据 'key' 列进行合并
result = pd.merge(df1, df2, on='key')
print(result)
```
3. `join` 函数用于根据索引合并两个 DataFrame。
```python
import pandas as pd
# 创建两个示例 DataFrame
df1 = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6], 'key': ['K1', 'K2', 'K3']}).set_index('key')
df2 = pd.DataFrame({'C': [7, 8, 9], 'D': [10, 11, 12], 'key': ['K1', 'K2', 'K4']}).set_index('key')
# 根据索引进行合并
result = df1.join(df2, lsuffix='_left', rsuffix='_right')
print(result)
```
这些方法可以根据你的需求选择合适的方法来合并 DataFrame。