ImportError:导入 PCA 时无法导入名称“LatentDirichletAllocation”[关闭]

Posted

技术标签:

【中文标题】ImportError:导入 PCA 时无法导入名称“LatentDirichletAllocation”[关闭]【英文标题】:ImportError: cannot import name 'LatentDirichletAllocation' when importing PCA [closed] 【发布时间】:2020-04-06 20:27:03 【问题描述】:

我不断收到错误:

ImportError: cannot import name 'LatentDirichletAllocation'

完整的追溯:

Traceback (most recent call last):
  File "/home/path/to/file/pca.py", line 7, in <module>
    from sklearn.decomposition import PCA
  File "/home/user/.local/lib/python3.6/site-packages/sklearn/decomposition/__init__.py", line 19, in <module>
    from ._online_lda import LatentDirichletAllocation
ImportError: cannot import name 'LatentDirichletAllocation'

当我尝试使用以下方法导入 PCA 时:

sklearn.decomposition import PCA

我删除了 sklearn 文件夹,但仍然出现错误。

【问题讨论】:

你的 sklearn 版本是什么? sklearn.__version__ 版本为0.22 这在 0.22 上坏了 .. 我有同样的问题 这能回答你的问题吗? ImportError: cannot import name 'LatentDirichletAllocation' 【参考方案1】:

安装损坏。

试试:

对于 Python 2

pip uninstall scikit-learn
pip install -U scikit-learn==0.20.4

对于 Python 3

pip3 uninstall scikit-learn
pip3 install -U scikit-learn==0.21.3

【讨论】:

【参考方案2】:

遇到这个问题,完全卸载并通过pip重新安装scikit-learn修复它。

【讨论】:

以上是关于ImportError:导入 PCA 时无法导入名称“LatentDirichletAllocation”[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

ImportError:从 sklearn 导入 TfidfVectorizer 时无法导入名称 __check_build

ImportError:无法导入名称“AFAVSignature”

如何修复“ImportError:无法导入名称'StringIO'”

ImportError:无法导入名称'password_reset'

Keras - ImportError:无法导入名称'CuDNNLSTM'

从 imblearn.combine 导入 SMOTEENN 时,ImportError 是:“无法导入名称 get_max_squared_sum”