from ..utils.fixes import rankdata ImportError:无法导入名称' rankdata' MongoDB的

时间:2017-01-14 17:57:55

标签: python mongodb

我正试图让Skikit通过Anaconda上的Spyder学习

C:\Anaconda3>conda --version
conda 4.3.4
C:\Anaconda3>python --version
Python 3.5.2 :: Anaconda 4.0.0 (64-bit)
Spyder 2.3.8

我尝试执行以下操作:

print("Scikit-Learn", sklearn.__version__)
NameError: name 'sklearn' is not defined
from sklearn.model_selection import *
from ..utils.fixes import rankdata
ImportError: cannot import name 'rankdata'
Errors

任何想法为什么这个错误会像Anaconda那样出现,它会显示包存在,但是当我通过Spyder时它会出现上述错误。

1 个答案:

答案 0 :(得分:1)

当您使用anaconda时尝试:

conda update scikit-learn

Conda将尝试处理de依赖,它可能会更新其他软件包。

如果这不起作用,则位于<Anaconda_basedir>\lib\python3.5\site-packages\sklearn\utils的文件fixes.py中有一行if sp_version < (0,13, 0):,如果scipy的版本低于0.13则会调整导入rankdata 0.0。

由于原因,如果版本是&gt; 0.13.0它应该使用rankdata中的scipy.stats。但是,至少在我的情况下它不是,我做的是添加and False,以便它从rankdata获得scipy

最后一行是:

...
if sp_version < (0, 13, 0) and False:
    def rankdata(a, method='average'):
...