import numpy as np
import pandas as pd
dat = pd.read_excel("F:\\基础数学课\\应用多元统计分析\\exec6.5.xlsx",header =0)
R = dat.corr().values
lam,T = np.linalg.eig(R)
lam/sum(lam)(lam/sum(lam)).cumsum()
pd.DataFrame(T)
第八次作业
import numpy as np
import pandas as pd
dat = pd.read_excel("F:\\基础数学课\\应用多元统计分析\\examp6.3.3.xlsx",header=1)
R = dat.corr()
lamda,T = np.linalg.eig(R)
lamda/lamda.sum()(lamda/lamda.sum()).cumsum()
pd.DataFrame(T)# 由于前三个的方差贡献率已到达了87% > 85% , 选用前面三个进行主成分分析即可
lam1 = lamda[0]
lam2 = lamda[1]
lam3 = lamda[2]
t1 = T[:,0]
t2 = T[:,1]
t3 = T[:,2]
T = pd.DataFrame(T[:,:3],index=['x1','x2','x3','x4','x5','x6','x7','x8'],columns=['y1','y2','y3'])