我有一个看起来像这样的数据集
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
s。我查找了 sklearn
s Imputer
类,但它仅支持均值、中位数和众数插补。 这里 有一个功能请求,但我认为到目前为止还没有实现。关于如何使用 KNN 替换最后两列中的 NaN
的任何想法?
编辑:因为我需要在另一个环境中运行代码,所以我没有安装包的奢侈。 Sklearn、pandas、numpy 和其他标准包是我唯一可以使用的。
原文由 Clock Slave 发布,翻译遵循 CC BY-SA 4.0 许可协议
fancyimpute 包 支持这种插补,使用以下 API:
以下是此软件包支持的插补: