[英]Issues while importing imblearn
我正在嘗試在我的 jupyter 筆記本中導入 SMOTE。我嘗試了以下步驟;
我首先在終端中使用以下命令安裝了 imblearn
conda install -c glemaitre imbalanced-learn
然后我使用以下命令在我的筆記本中導入 imblearn;
from imblearn import under_sampling, over_sampling
我收到以下錯誤;
<ipython-input-36-d0524665b8f2> in <module>()
----> 1 from imblearn import under_sampling, over_sampling
~/anaconda3/lib/python3.6/site-packages/imblearn/under_sampling/__init__.py in <module>()
4 """
5
----> 6 from .prototype_generation import ClusterCentroids
7
8 from .prototype_selection import RandomUnderSampler
~/anaconda3/lib/python3.6/site-packages/imblearn/under_sampling/prototype_generation/__init__.py in <module>()
4 """
5
----> 6 from .cluster_centroids import ClusterCentroids
7
8 __all__ = [
~/anaconda3/lib/python3.6/site-packages/imblearn/under_sampling/prototype_generation/cluster_centroids.py in <module>()
12 from scipy import sparse
13
---> 14 from sklearn.cluster import KMeans
15 from sklearn.neighbors import NearestNeighbors
16 from sklearn.utils import safe_indexing
~/anaconda3/lib/python3.6/site-packages/sklearn/cluster/__init__.py in <module>()
4 """
5
----> 6 from .spectral import spectral_clustering, SpectralClustering
7 from .mean_shift_ import (mean_shift, MeanShift,
8 estimate_bandwidth, get_bin_seeds)
~/anaconda3/lib/python3.6/site-packages/sklearn/cluster/spectral.py in <module>()
15 from ..metrics.pairwise import pairwise_kernels
16 from ..neighbors import kneighbors_graph
---> 17 from ..manifold import spectral_embedding
18 from .k_means_ import k_means
19
~/anaconda3/lib/python3.6/site-packages/sklearn/manifold/__init__.py in <module>()
4
5 from .locally_linear import locally_linear_embedding, LocallyLinearEmbedding
----> 6 from .isomap import Isomap
7 from .mds import MDS, smacof
8 from .spectral_embedding_ import SpectralEmbedding, spectral_embedding
~/anaconda3/lib/python3.6/site-packages/sklearn/manifold/isomap.py in <module>()
9 from ..utils import check_array
10 from ..utils.graph import graph_shortest_path
---> 11 from ..decomposition import KernelPCA
12 from ..preprocessing import KernelCenterer
13
~/anaconda3/lib/python3.6/site-packages/sklearn/decomposition/__init__.py in <module>()
9 from .incremental_pca import IncrementalPCA
10 from .kernel_pca import KernelPCA
---> 11 from .sparse_pca import SparsePCA, MiniBatchSparsePCA
12 from .truncated_svd import TruncatedSVD
13 from .fastica_ import FastICA, fastica
~/anaconda3/lib/python3.6/site-packages/sklearn/decomposition/sparse_pca.py in <module>()
9 from ..utils import check_random_state, check_array
10 from ..utils.validation import check_is_fitted
---> 11 from ..linear_model import ridge_regression
12 from ..base import BaseEstimator, TransformerMixin
13 from .dict_learning import dict_learning, dict_learning_online
~/anaconda3/lib/python3.6/site-packages/sklearn/linear_model/__init__.py in <module>()
10 # complete documentation.
11
---> 12 from .base import LinearRegression
13
14 from .bayes import BayesianRidge, ARDRegression
~/anaconda3/lib/python3.6/site-packages/sklearn/linear_model/base.py in <module>()
25
26 from ..externals import six
---> 27 from ..utils import Parallel, delayed
28 from ..base import BaseEstimator, ClassifierMixin, RegressorMixin
29 from ..utils import check_array, check_X_y
ImportError: cannot import name 'Parallel
誰能指導我? 謝謝!
因此,在我使用以下步驟安裝 SMOTE 后它起作用了;
pip install -U imbalanced-learn
conda install -c conda-forge imbalanced-learn
看起來我安裝不正確。
我無法理解以前安裝中的錯誤。如果有人能向我指出這些錯誤,我將不勝感激。
謝謝!
謝謝,我有同樣的問題,但我在終端或命令提示符下運行了以下命令來解決問題。
pip install -U imbalanced-learn
成功執行后,我按照 conda 命令運行
conda install -c conda-forge imbalanced-learn
這就是我解決問題的方法
在 joanis 的建議下添加這些評論作為答案:
將軟件包安裝到支持 Jupyter 筆記本的相同環境的一種便捷方法是在筆記本的單元格中使用現代魔法命令pip
和conda
。 添加了魔術命令%pip install <package name>
和%conda install <package name>
以確保在 Jupyter notebook 內完成的安裝被放置在支持 notebook 的實際環境中,請參閱此處了解更多信息。 在 pip 或 conda 前面單獨使用感嘆號並不能確保安裝到正確的后備環境,這通常會導致用戶不理解為什么他們認為他們已經安裝后無法正確導入的問題如下別人的建議。
( %
符號將在pip
和conda
前面用於安裝以外的其他命令,因此現在最容易想到在 Jupyter 筆記本中使用 pip 和 conda 的最佳實踐為%pip ...
或%conda ...
,其中...
表示命令的其余部分。)
因為在大多數現代 Jupyter 系統中,默認情況下會啟用自動魔法,所以您實際上可以去掉 pip 或 conda 前面的符號,並獲得在幕后使用的現代魔法命令。 盡管通常最好使用明確的%
符號,以便您和其他人更加了解正在發生的事情。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.