在Python中使用KNN的缺失值插补

问题描述 投票:16回答:4

我有一个看起来像这样的数据集

1908    January 5.0 -1.4
1908    February    7.3 1.9
1908    March   6.2 0.3
1908    April   NaN   2.1
1908    May NaN   7.7
1908    June    17.7    8.7
1908    July    NaN   11.0
1908    August  17.5    9.7
1908    September   16.3    8.4
1908    October 14.6    8.0
1908    November    9.6 3.4
1908    December    5.8 NaN
1909    January 5.0 0.1
1909    February    5.5 -0.3
1909    March   5.6 -0.3
1909    April   12.2    3.3
1909    May 14.7    4.8
1909    June    15.0    7.5
1909    July    17.3    10.8
1909    August  18.8    10.7  

我想使用KNN作为方法替换NaN。我查找了sklearnImputer类,但它仅支持均值,中位数和众数插补。有一个功能请求here,但我认为目前尚未实现。关于如何使用KNN替换最后两列中的NaN的任何想法?

编辑

:由于我需要在另一个环境上运行代码,因此我没有安装软件包的奢侈之处。 sklearn,pandas,numpy和其他标准软件包是我只能使用的软件包。

我有一个看起来像这样的数据集1908年1月5.0 -1.4 1908年2月7.3 1.9 1908 3月6.2 0.3 1908年4月NaN 2.1 1908年5月NaN 7.7 1908年6月17.7 8.7 1908 ...

python scikit-learn knn
4个回答
17
投票

5
投票
fit_transform

2
投票

0
投票
© www.soinside.com 2019 - 2024. All rights reserved.