初步理解PCA
#理解PCA:线性相关矩阵秩计算样例
import numpy as np
M = np.array([[1, 2], [1009, 2018]]) #初始化一个2*2的线性相关矩阵
result=np.linalg.matrix_rank(M, tol=None) #计算2*2线性相关矩阵的秩
print('得出矩阵的秩:',result)
输出结果
利用PCA对手写数字图片识别数据集进行降维处理
核心代码
X_digits = digits_train[np.arange(64)]
y_digits = digits_train[64]
estimator = PCA(n_components=2)
X_pca = estimator.fit_transform(X_digits)
for i in range(len(colors)):
px = X_pca[:, 0][y_digits.as_matrix() == i]
py = X_pca[:, 1][y_digits.as_matrix()== i]
plt.scatter(px, py, c=colors[i])
plt.legend(np.arange(0,10).astype(str))
plt.xlabel('First Principal Component')
plt.ylabel('Second Principal Component')