Python pd.concat
时间: 2024-06-16 07:02:00 浏览: 151
`pd.concat` 是 Pandas 库中的一个函数,全称为 "concatenate",用于合并(concatenate)两个或多个 pandas 数据结构(如 DataFrame 或 Series),如水平(row-wise)、垂直(column-wise)或者沿着指定的轴方向连接数据。
1. 水平合并(row-wise):当你想要将 DataFrame 的行连接在一起时,可以使用 `pd.concat()` 函数,通过 `axis=0` 参数指定为水平合并(默认)。
```python
df1 = pd.DataFrame({'A': [1, 2], 'B': [3, 4]})
df2 = pd.DataFrame({'A': [5, 6], 'B': [7, 8]})
merged = pd.concat([df1, df2])
```
2. 垂直合并(column-wise):如果你想合并列,可以设置 `axis=1`。
```python
df1 = pd.DataFrame({'A': [1, 2], 'B': [3, 4]})
df2 = pd.DataFrame({'C': [5, 6], 'D': [7, 8]})
merged = pd.concat([df1, df2], axis=1)
```
3. 沿着指定轴合并:除了默认的行(0)和列(1)方向,还可以根据需要指定其他轴,如 `axis=2` 对于三维数组(Panel)。
4. 连接不规则形状的数据:`pd.concat` 可以处理不规则的 DataFrame 列表,这时需要提供一个 `keys` 参数来标识每个部分。
5. 处理缺失值:默认情况下,`pd.concat` 将在连接时发生缺失值冲突的地方填充 NaN,也可以通过 `join` 和 `fill_value` 参数控制合并策略。
```python
merged = pd.concat([df1, df2], join='outer', fill_value=np.nan)
```
阅读全文