基于对主成分分析的大致了解,粗略的实现了添加链接描述中的PCA实例。
import matplotlib.pyplot as plt
import numpy as np
# import sklearn.decomposition as dp
# from sklearn.datasets.base import load_iris
data=np.array([[2.5,2.4],
[0.5,0.7],
[2.2,2.9],
[1.9,2.2],
[3.1,3.0],
[2.3,2.7],
[2,1.6],
[1,1.1],
[1.5,1.6],
[1.1,0.9]
])
#样本中心化
dataAver=np.average(data, axis=0)
print('平均值为:',+dataAver)
dataAdjust=np.empty((10,2))
for i in range(10):
#dataAjust[i,0]=data[i,0]
dataAdjust[i, 0] = data[i, 0] - dataAver[0]
dataAdjust[i, 1] = data[i, 1] - dataAver[1]
print('样本中心化:',+dataAdjust)
#求协方差
cov=np.cov(dataAdjust,rowvar = False)
print("协方差矩阵:",cov)
#求协方差的特征值和特征向量
Eigenvalues,Featurevector