【发布时间】:2019-04-16 07:51:28
【问题描述】:
我在 this example 之后导入 RUSBoostClassifier 时遇到了困难
from imblearn.ensemble import RUSBoostClassifier
我收到以下错误:
ImportError Traceback (most recent call last)
<ipython-input-12-d0ff5157a81a> in <module>
----> 1 from imblearn.ensemble import RUSBoostClassifier
2 from sklearn.datasets import make_classification
3
4 X, y = make_classification(n_samples=1000, n_classes=3,
5 n_informative=4, weights=[0.2, 0.3, 0.5],
ImportError: cannot import name 'RUSBoostClassifier'
我不明白为什么!我可以轻松使用 imblearn 中的其他模块,例如
from imblearn.under_sampling import RandomUnderSampler
或
from imblearn.over_sampling import SMOTE
我用的是 Jupyter notebook,Python 版本是 3.6.6。我已经更新了 sklearn 包并在 link 之后重新安装了 imblearn 包。
有没有人想办法解决这个问题?或者有想法在代码中直接使用这个类(源码)?
【问题讨论】:
-
请发布完整的错误跟踪。你确定你的 Jupyter notebook 运行在安装了
imblearn的同一个 anaconda 环境中吗? -
@desertnaut 感谢您的回复!关于您的问题:我只有一个 anaconda 环境。出于这个原因,我想我在安装了 imblearn 的同一个 anaconda 环境中运行 Jupyter Notebook。关于完整的错误消息,我编辑了帖子。你可以在那里看到它。
-
还是不太了解环境;你能在 Jupyter 中运行
!pip list命令,看看imblearn是否确实包含在已安装的包中? -
感谢您的提示。根据您的提示,我看到 imblearn 的版本是 0.3.0(尽管我已经重新安装了 imblearn!)。最新版本的 imblearn(版本 0.4.3)支持新模块。这次我完全删除了 imblearn 包并通过 Anaconda 再次安装。安装后,我可以成功使用 imblearn 中的所有模块。
-
酷!我建议您将此作为答案发布,以帮助将来可能面临类似情况的其他人...
标签: python machine-learning anaconda python-import imblearn