为空值的 K-最近邻插补安装 Python Fancy Impute 模块

Posted

技术标签:

【中文标题】为空值的 K-最近邻插补安装 Python Fancy Impute 模块【英文标题】:Installing Python Fancy Impute Module for K-Nearest Neighbors Imputation of Null Values 【发布时间】:2016-04-28 10:45:03 【问题描述】:

我使用的是 64 位 Windows 10 机器。

我正在尝试安装 fancy impute module 来对数据集中的空值进行 K-Nearest Neighbors Imputation。

我不得不单独安装cvxopt

conda install -c https://conda.binstar.org/eswears cvxopt

和 Keras 使用

pip install keras

当我从命令提示符写入 python 时

[Anaconda2] C:\Users\path>python
>>> import fancyimpute

我收到以下错误(我已截断错误消息,但可以根据要求显示完整错误)

Using Theano backend.
WARNING (theano.configdefaults): g++ not detected...
'g++' is not recognized as an internal or external command...

编辑 为了解决这个问题,我下载了 MinGW 并按照here 的说明进行操作,但仍然收到同样的错误。

我的问题是:

(1) 是否有其他方法可以解决我收到的错误消息?

(2) 是否有一个 python 模块也可以对空值进行 K-Nearest Neighbors Imputation?

【问题讨论】:

报错说明你没有g++,可以用MinGW安装-mingw.org/wiki/howto_install_the_mingw_gcc_compiler_suite 我已经安装了 MinGW 并按照问题中包含的链接中的说明进行操作。如果不清楚,请道歉。我将编辑我的问题以突出显示 【参考方案1】:

你必须在库“ecos”之前安装。

如果导入ecos库有问题,只需从网站下载对应PC配置的ecos包:“http://www.lfd.uci.edu/~gohlke/pythonlibs” 然后,在终端的下载地址输入: "点安装 ecos‑2.0.4‑cp35‑cp35m‑win_amd64.whl"

祝你好运

【讨论】:

【参考方案2】:

是否存在超出 g++ 警告的错误?我可能错了,但我的印象是 Theano 在没有编译器的情况下会默认使用较慢的实现。自从fancyimpute的。 KNN 实现实际上并没有使用 Theano,那么您应该仍然可以使用该库的那部分。

【讨论】:

以上是关于为空值的 K-最近邻插补安装 Python Fancy Impute 模块的主要内容,如果未能解决你的问题,请参考以下文章

用python.检查“影片名称”字段为空值的+数据,给该字段填充数+据"unnamed"?

机器学习100天(三十):030 K近邻分类算法-K值的选择

机器学习100天(三十):030 K近邻分类算法-K值的选择

k近邻算法

Matlab:对缺失数据的多重插补

K-NN(最近邻分类算法 python