了解 scikit learn 导入变体

问题描述 投票:0回答:1

Scikit learn 教程中的导入语句位于表单中

from sklearn.decomposition import PCA

另一个有效的版本是

import sklearn.decomposition
pca = sklearn.decomposition.PCA(n_components = 2)

但是

import sklearn
pca = sklearn.decomposition.PCA(n_components = 2)

不,并抱怨

AttributeError: module 'sklearn' has no attribute 'decomposition'

这是为什么,我如何预测哪些可以工作,哪些不能,这样我就不必进行测试?如果理解和预测能力扩展到一般的Python包那将是最好的。

python scikit-learn python-import
1个回答
0
投票

sklearn
不会自动导入其子模块。如果您想使用
sklearn.<SUBMODULE>
,那么您需要显式导入它,例如
import sklearn.<SUBMODULE>
。然后您就可以使用它,而无需进一步导入,例如
result = sklearn.<SUBMODULE>.function(...)

大型包通常会以这种方式运行,它们不会自动导入所有子模块。

© www.soinside.com 2019 - 2024. All rights reserved.