赞
踩
附上源代码:
import pandas as pd import numpy as np from sklearn.decomposition import PCA data = pd.read_csv(r'heart.csv',header=None,delimiter=' ') pca = PCA() pca.fit(data) print('特征向量\n',pca.components_) print('各个成分各自的方差百分比(贡献率)\n',pca.explained_variance_ratio_) #特征向量的维度和长度 len(pca.components_), pca.components_.shape # 根据计算结果,前四分主成分即达到贡献率99.77%, pca=PCA(4) pca.fit(data) low_d = pca.transform(data) print(low_d) #计算压缩维数: np.array(list(data.shape))-np.array(list(pca.components_.shape)) #还原 inv_result = pca.inverse_transform(low_d) print(inv_result) #降维有损 #贡献率99.77%,但维数不变 print(inv_result.shape) print(data)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。