如何在Pandas中选择性地合并两个表格?
时间: 2024-09-19 22:02:38 浏览: 37
在Pandas中,你可以根据需要选择性地合并两个表格(DataFrame),常见的方法有内联合并(inner join)、外联合并(outer join)、左联合并(left join)和右联合并(right join)。这里以`concat`和`merge`函数为例进行说明:
1. **使用`concat`函数**:
如果你需要按照行(index)进行堆叠,而不需要基于共享的键进行连接,可以使用`concat`。例如,假设你想将两列数据分别放在一个新DataFrame里:
```python
new_df = pd.concat([df1, df2]) # 这是按索引直接堆叠,无合并键
```
2. **使用`merge`函数**:
如果你想基于某些列(如`key`)进行合并,`merge`函数更为常用:
```python
merged_df = pd.merge(df1, df2, on='common_column', how='inner') # inner join
merged_df = pd.merge(df1, df2, on='common_column', how='outer') # outer join
merged_df = pd.merge(df1, df2, on='common_column', how='left') # left join
merged_df = pd.merge(df1, df2, on='common_column', how='right') # right join
```
`how`参数可以选择join的方式,包括`'inner'`(交集)、`'outer'`(并集)、`'left'`(左侧DataFrame保留所有,右侧补充NaN)和`'right'`(右侧DataFrame保留所有,左侧补充NaN)。
阅读全文