sklearn 缺失值填補(總結)


首先查看數據形態:

data.shape

再查看數據類型和非空值的個數與比例

data.info()

使用SimpleImputer進行填補

from sklearn.impute import SimpleImputer as si
imp_mean=si()

默認是用均值進行填補,參數如下:

  • missing_values: 空值的類型。默認np.nan

注意,numpy自帶的fillna只能填補np.nan,而此處則可以指定空值的類型。比如?N/A

  • strategy: 可選:mean, median, most_frequent, constant
  • fill_value: 以什么值進行填補,當constant時可用。
  • copy:是否創建副本

當數據是連續型,一般用均值填補。數據是分類型,用眾數填補。

比如當空值是?時,使用0填充:

imp_0=si(missing_values="?",strategy='constant', fill_value=0)
imp_0=imp_0.fit_transform(data_)

注意此處,data是如果是0維,則要先變為一維:

data_=data.列名.values.reshape(-1.1)

除了用均值,0,眾數,中位數。還可用:算法、多重差補等。但是如用隨機森林進行填補,解釋性比較差。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM