天天看點

python填充空值_python 特征缺失值填充

python資料預處理之缺失值簡單處理:https://blog.csdn.net/Amy_mm/article/details/79799629

該部落格總結比較詳細,感謝部落客。

我們在進行模型訓練時,不可避免的會遇到某些特征出現空值的情況,下面整理了幾種填充空值的方法

1. 用固定值填充

對于特征值缺失的一種常見的方法就是可以用固定值來填充,例如0,9999, -9999, 例如下面對灰階分這個特征缺失值全部填充為-99

data['灰階分'] = data['灰階分'].fillna('-99')

2. 用均值填充

對于數值型的特征,其缺失值也可以用未缺失資料的均值填充,下面對灰階分這個特征缺失值進行均值填充

data['灰階分'] = data['灰階分'].fillna(data['灰階分'].mean()))

3. 用衆數填充

與均值類似,可以用未缺失資料的衆數來填充缺失值

data['灰階分'] = data['灰階分'].fillna(data['灰階分'].mode()))

4. 用上下資料進行填充

用前一個資料進行填充

data['灰階分'] = data['灰階分'].fillna(method='pad')

用後一個資料進行填充

data['灰階分'] = data['灰階分'].fillna(method='bfill')

5. 用插值法填充

data['灰階分'] = data['灰階分'].interpolate()

6. 用KNN進行填充

from fancyimpute import BiScaler, KNN, NuclearNormMinimization, SoftImpute

dataset = KNN(k=3).complete(dataset)