在尝试运行GaussianNB的.fit方法时,我收到以下错误:
ModuleNotFoundError: No module named 'sklearn.utils._pprint'我可以交叉验证:
cv_result = cross_val_score(GaussianNB(), X_train, y_train, cv=kfold, scoring=scoring,n_jobs=njobs)但是,以下代码不起作用:
NB = GaussianNB()
NB.fit(X_train, y_train)我目前使用的是Anaconda Jupyter笔记本电脑,并使用以下版本
jupyter-client==5.3.1
jupyter-console==6.0.0
jupyter-core==4.5.0
scikit-learn==0.21.3你知道是什么导致了这个问题以及如何修复它吗?
发布于 2019-09-10 16:32:27
这个命令在scikit-learn版本0.21.3上运行得很好。您的ipython和相关模块很可能安装在与scikit-learn不同的环境中。您应该能够通过创建一个脚本并使用python执行它来测试这一点。如果这样做有效,但在ipython控制台或jupyter笔记本上运行不起作用,请尝试重新安装ipython、jupyter和scikit-learn with anaconda/pip。
具体地说,我认为您的错误是由于NB.fit返回self造成的。这使得jupyter notebook尝试通过__repr__方法显示NB对象,而该方法又依赖于sklearn.utils._pprint。一种快速的解决办法是改变
NB.fit(x,y)至
NB = NB.fit(x,y)https://stackoverflow.com/questions/57866569
复制相似问题