机器学习课程4-题1-1

薛毅书例9.2
这里写图片描述

这里写图片描述

解答过程:

输入数据

#### 输入数据, 按下三角输入, 构成向量
x<-c(1.00, 
     0.79, 1.00, 
     0.36, 0.31, 1.00, 
     0.96, 0.74, 0.38, 1.00, 
     0.89, 0.58, 0.31, 0.90, 1.00, 
     0.79, 0.58, 0.30, 0.78, 0.79, 1.00, 
     0.76, 0.55, 0.35, 0.75, 0.74, 0.73, 1.00, 
     0.26, 0.19, 0.58, 0.25, 0.25, 0.18, 0.24, 1.00,
     0.21, 0.07, 0.28, 0.20, 0.18, 0.18, 0.29,-0.04, 1.00,
     0.26, 0.16, 0.33, 0.22, 0.23, 0.23, 0.25, 0.49,-0.34, 1.00, 
     0.07, 0.21, 0.38, 0.08,-0.02, 0.00, 0.10, 0.44,-0.16, 0.23, 
     1.00, 
     0.52, 0.41, 0.35, 0.53, 0.48, 0.38, 0.44, 0.30,-0.05, 0.50, 
     0.24, 1.00, 
     0.77, 0.47, 0.41, 0.79, 0.79, 0.69, 0.67, 0.32, 0.23, 0.31, 
     0.10, 0.62, 1.00, 
     0.25, 0.17, 0.64, 0.27, 0.27, 0.14, 0.16, 0.51, 0.21, 0.15, 
     0.31, 0.17, 0.26, 1.00, 
     0.51, 0.35, 0.58, 0.57, 0.51, 0.26, 0.38, 0.51, 0.15, 0.29, 
     0.28, 0.41, 0.50, 0.63, 1.00, 
     0.21, 0.16, 0.51, 0.26, 0.23, 0.00, 0.12, 0.38, 0.18, 0.14, 
     0.31, 0.18, 0.24, 0.50, 0.65, 1.00)
#### 输入变量名称
names<-c("X1", "X2", "X3", "X4", "X5", "X6", "X7", "X8", "X9",  
         "X10", "X11", "X12", "X13", "X14", "X15", "X16")
#### 将矩阵生成相关矩阵
R<-matrix(0, nrow=16, ncol=16, dimnames=list(names, names))
for (i in 1:16){
   for (j in 1:i){
      R[i,j]<-x[(i-1)*i/2+j]; R[j,i]<-R[i,j]
   }
}

上面的三角矩阵转换为全矩阵,还有下面一种方法

#等同于下面
R1<-matrix(0, nrow=16, ncol=16, dimnames=list(names, names))
idx=0;
for (i in 1:16){
   for (j in 1:i){
      idx=idx+1;
      R1[i,j]<-x[idx]; R1[j,i]<-R1[i,j];

   }
}

主成分分析并分类

 #### 作主成分分析
pr<-princomp(covmat=R); load<-loadings(pr)
 #### 画散点图
plot(load[,1:2]); text(load[,1], load[,2], adj=c(-0.4, 0.3))

如下图所示,前5个因子的累计贡献率为0.8. 由于多维比较难画图,这儿只取前两个因子做散点图,然后进行分类。
这里写图片描述

这里写图片描述

结论与课本一致

  • 左上角,长类
  • 右下角 围类
  • 中间,体型特征指标,即前胸(X9)、后背(X10/sub>)、肩宽(X12)

拓展:根据三个主成分画三维图

install.packages("scatterplot3d")
library(scatterplot3d)
scatterplot3d(load[,1],load[,2],load[,3],highlight.3d=TRUE, col.axis="blue",
       col.grid="lightblue", main="scatterplot3d - 1", pch=20);

这里写图片描述

三维图如上,业务上不好分析,仅参考用

总结,知识点如下

  • 三角矩阵转为全矩阵
  • 根据协方差阵做主成分分析
  • 根据最主要两个主成分,做散点图,分类,并业务解释
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值