“PCA”对象没有属性“explained_variance_”

数据挖掘 scikit-学习 主成分分析 降维
2022-03-08 19:51:00

肘部方法 - 找到保持最大方差所需的组件数。

我的代码:

pca = decomposition.PCA()

vectorizer = TfidfVectorizer(min_df=10)
preprocessed_essay_tfidf = vectorizer.fit_transform(preprocessed_essay)
pca_data = preprocessed_essay_tfidf
pca.n_components = 3000

percentage_var_explained = pca.explained_variance_ / np.sum(pca.explained_variance_);
cum_var_explained = np.cumsum(percentage_var_explained)

我得到属性错误:

AttributeError: 'PCA' object has no attribute 'explained_variance_

为什么是这样?

我可以在这里explained_variance_找到礼物

1个回答

PCA 是一个估计器,因此您需要调用该fit()方法来计算主成分和与它们相关的所有统计数据,例如投影的方差,因此是解释方差比。
pca.fit(preprocessed_essay_tfidf)或者pca.fit_transform(preprocessed_essay_tfidf)