pandas.DataFrame.fillna()函数的作用是将数据帧(DataFrame)中的缺失值(NaN值)用指定的值或方法进行填充。具体使用方法如下:
DataFrame.fillna(value=None, method=None, axis=None, inplace=False, limit=None, downcast=None)
参数解释:
value
:要用来填充缺失值的值或字典(第二个实例会详细介绍)。
method
:用来填充缺失值的方法,可以是 ffill
(向前填充)或 bfill
(向后填充),默认为 None
。
axis
:对缺失值填充的轴,可以是 0
(默认,按列填充)或 1
(按行填充)。
inplace
:是否在原数据帧中进行填充,默认为 False
。
limit
:限制向前或向后填充的最大数量。
downcast
:用于将填充结果数据类型降低为更小的类型,以减少内存占用。
考虑一个数据帧如下:
import numpy as np
import pandas as pd
df = pd.DataFrame({'A': [1, 2, np.nan, 4], 'B': [np.nan, 6, 7, 8], 'C': [9, 10, 11, 12]})
print(df)
输出:
A B C
0 1.0 NaN 9
1 2.0 6.0 10
2 NaN 7.0 11
3 4.0 8.0 12
使用 df.fillna()
将数据帧中的所有缺失值填充为常数值 0
:
df.fillna(0)
输出:
A B C
0 1.0 0.0 9
1 2.0 6.0 10
2 0.0 7.0 11
3 4.0 8.0 12
考虑一个数据帧如下:
import numpy as np
import pandas as pd
df = pd.DataFrame({'A': [1, 2, np.nan, 4], 'B': [np.nan, 6, 7, 8], 'C': [9, 10, 11, 12]})
print(df)
输出:
A B C
0 1.0 NaN 9
1 2.0 6.0 10
2 NaN 7.0 11
3 4.0 8.0 12
使用 df.fillna()
将数据帧中的缺失值按列进行填充,指定不同列的填充值:
fillna_values = {'A': 0, 'B': 5, 'C': 10}
df.fillna(fillna_values)
输出:
A B C
0 1.0 5.0 9
1 2.0 6.0 10
2 0.0 7.0 11
3 4.0 8.0 12
通过指定字典进行填充,可以按列或行指定不同的填充值,便于快速填充缺失值。
本文链接:http://task.lmcjl.com/news/4565.html