dataframe填充空值
时间: 2023-10-03 11:05:46 浏览: 100
解决pandas.DataFrame.fillna 填充Nan失败的问题
在DataFrame中,可以使用`fillna()`方法来填充空值。该方法的语法如下:
```
DataFrame.fillna(value=None, method=None, axis=None, inplace=False, limit=None, downcast=None, **kwargs)
```
其中,`value`是填充的值,可以是标量值、字典、Series或DataFrame;`method`是填充的方法,可以是`ffill`或`bfill`;`axis`是填充的轴,可以是0(列)或1(行);`inplace`表示是否在原DataFrame上进行修改,如果为True,则直接在原DataFrame上进行修改;`limit`是填充的最大数量,`downcast`是指定数据类型。
以下是一些示例:
1. 使用标量填充空值
```python
import pandas as pd
import numpy as np
df = pd.DataFrame({'A': [1, 2, np.nan], 'B': [4, np.nan, np.nan], 'C': [7, 8, 9]})
df.fillna(0)
```
输出:
```
A B C
0 1.0 4.0 7
1 2.0 0.0 8
2 0.0 0.0 9
```
2. 使用字典填充空值
```python
df.fillna({'A': 0, 'B': 1})
```
输出:
```
A B C
0 1.0 4.0 7
1 2.0 1.0 8
2 0.0 1.0 9
```
3. 使用`ffill`和`bfill`填充空值
```python
df.fillna(method='ffill')
```
输出:
```
A B C
0 1.0 4.0 7
1 2.0 4.0 8
2 2.0 4.0 9
```
```python
df.fillna(method='bfill')
```
输出:
```
A B C
0 1.0 4.0 7
1 2.0 NaN 8
2 NaN NaN 9
```
阅读全文