报错 ImportError: No module named model_selection 的解决办法

来源:互联网 发布:linux命令行在哪 编辑:程序博客网 时间:2024/05/01 15:34

win10下运行了一段Python代码,出现了报错, 报错是ImportError: No module named model_selection。我定位代码到import sklearn.model_selection,我才知道原来我没有这个model。

我在网上找了一下解决方法,原来是scikit-learn的版本太低。在anaconda中通过命令行查看sklearn的版本为 0.17.1,而 sklearn.model_selection 是 sklearn 版本 0.18.1 以上的。那么我升级一下 scikit-learn 应该就可以了。


步骤如下所示:

1、在cmd环境下输入:conda list,就可以查看所有安装库的版本了;


2、0.17.1版本的 scikit-learn 版本太低,得更新为 0.18 版本的 scikit-learn 。

      cmd 环境下输入:conda update scikit-learn


3、提示是否进行,输入:y


其实步骤到这里,已经可以了。

但是,但是我发现我update的速度超级慢,有点不可思议,而且在最后竟然告诉我没有安装成功。



我上网查得原因是官网的镜像在境外,所以直接update可能会比较慢或者不能访问,说明这个报错跟我的源有关,所以我就把我的源改成了清华大学的镜像源。

cmd环境下,输入:conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
                                conda config --set show_channel_urls yes


之后呢,我就再次update scikit-learn,以便升级版本到 0.18。

步骤还是和刚刚的一样:

1、在cmd环境下,升级版本:conda update scikit-learn

2、提示是否进行:y


升级完成后,要确认一下版本是否升级完成。

cmd环境下,输入:conda list


版本正确,那么我就在python环境下试下。



总结一下:

1、出现报错ImportError: No module named model_selection 的解决办法是升级 scikit-learn 的版本;

2、update官网在境外的库时,最好是找找看有没有国内的镜像源,比如清华大学的镜像源或者豆瓣、阿里云等等;


另外,其中可能会报权限错误:


根据提示来就行。


自己把sklearn更新为0.19版本,并把“from sklearn.model_selection import cross_val_predict”更改为以下这句就可以了:
from sklearn.cross_validation import cross_val_predict


阅读全文
0 0
原创粉丝点击