您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Python scikit学习pca.explained_variance_ratio_截止

Python scikit学习pca.explained_variance_ratio_截止

是的,您几乎是正确的。该pca.explained_variance_ratio_参数返回每个维度所解释的方差矢量。因此pca.explained_variance_ratio_[i] 给出仅由第i + 1维解释的方差。

你可能想做pca.explained_variance_ratio_.cumsum()。这将返回一个向量x,该向量将返回由前i + 1个维度解释x[i]累积 方差。

import numpy as np
from sklearn.decomposition import PCA

np.random.seed(0)
my_matrix = np.random.randn(20, 5)

my_model = PCA(n_components=5)
my_model.fit_transform(my_matrix)

print my_model.explained_variance_
print my_model.explained_variance_ratio_
print my_model.explained_variance_ratio_.cumsum()
[ 1.50756565  1.29374452  0.97042041  0.61712667  0.31529082]
[ 0.32047581  0.27502207  0.20629036  0.13118776  0.067024  ]
[ 0.32047581  0.59549787  0.80178824  0.932976    1.        ]

因此,在我的随机玩具数据中,如果我选择,k=4我将保留93.3%的方差。

python 2022/1/1 18:26:00 有426人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶