例21-1 为了探讨小学生的生长发育指标与身体素质的相互关系,某市对小学生的体质进行了调查。现仅对84例10岁男孩的四项生长发育指标(x1~x4):肺活量、身高、体重、胸围与四项反映身体素质的指标(y1~y4):50m跑、跳高、跳远、实心球掷远
> can=read.csv('d:/can.csv') > can=as.matrix(can) > canx=can[,1:4] #将前4列提取作为生长发育矩阵 > cany=can[,5:8] #将后4列提取作为身体素质矩阵 > zcanx=scale(canx) # 对生长发育矩阵进行预处理(标准化) > zcany=scale(cany) # 身体素质矩阵进行预处理(标准化) # 对生长发育矩阵和身体素质矩阵进行预处理(标准化) > rcan=cor(zcanx,zcany) #求两个矩阵的相关矩阵 [,1] [,2] [,3] [,4] [1,] -0.2517700 0.6190052 0.5034716 0.6118385 [2,] -0.2002181 0.7669638 0.6395279 0.6539121 [3,] -0.2588718 0.7342691 0.6436623 0.6920838 [4,] -0.3246189 0.7471478 0.7168594 0.6995147 > svd(rcan) #求相关矩阵的奇异值分解 $d [1] 2.38563882 0.09572188 0.07063975 0.01184736 #考虑只取第一个奇异值2.38563882,因为 $u [,1] [,2] [,3] [,4] [1,] -0.4337134 0.29001402 -0.7789772 -0.3478204 [2,] -0.5063352 -0.78981273 0.1309404 -0.3204296 [3,] -0.5132588 -0.03386998 -0.1067725 0.8508924 [4,] -0.5404468 0.53938905 0.6038615 -0.2287530 $v [,1] [,2] [,3] [,4] [1,] 0.2175019 -0.84839441 0.02154499 0.4821366 [2,] -0.6025536 -0.50253877 -0.12727051 -0.6067834 [3,] -0.5281468 0.06029828 0.78858601 0.3091232 [4,] -0.5573894 0.15506718 -0.60122387 0.5511815 > canlx=zcanx %*% cansvd$u #求生长发育的潜变量矩阵 > canly=zcany %*% cansvd$v #求身体素质的潜变量矩阵 > cov(canlx,canly) #求生长发育和身体素质两个潜变量的协方差矩阵,验证对角线上元素即为奇异值。 协方差矩阵的两种情况: (一):设有m个变量xi(i=1,2,...,m),则其协方差矩阵为每个变量xi的方差,以及不同xi之间的协方差组成的矩阵形式,对角线上为各自的方差,其余位置协方差。 (二):设有两组变量xi(i=1,2,...,m)和yj(i=1,2,...,k),两组变量的协方差矩阵为对角线上为xi与yi的协方差(i=j),其余为(i≠j)的xi与yi的协方差 在进行主成分分,因子分析等之前,都要对原始变量进行中心化,原因很简单,因为协方差是离均差积和的平均,用矩阵的形式表示为,中心化的x的转置矩阵乘以中心化的x的矩阵再除以n-1。 R中,相应命令为:第一种情况cov(x),第二种情况cov(x,y) [,1] [,2] [,3] [,4] [1,] 2.385639e+00 4.449148e-16 9.621968e-17 2.924995e-17 [2,] -2.065497e-16 9.572188e-02 -7.068998e-17 5.064008e-17 [3,] 1.538078e-16 5.390705e-17 7.063975e-02 -6.007721e-17 [4,] 2.342269e-16 5.908771e-17 -1.204754e-17 1.184736e-02 > cor(canlx,canly) #求生长发育和身体素质两个潜变量的相关矩阵,第一对潜变量的相关系数为0.8634, 第二对潜变量的相关系数为0.172,这与教科书上的调整后的典型相关系数相似(0.878和0.167)。这样可以 最终选择第一对潜变量的相关性来反应生长发育和身体素质的相关性,即相关程度为0.8634。 [,1] [,2] [,3] [,4] [1,] 8.634332e-01 3.007953e-16 1.103569e-16 2.823501e-17 [2,] -1.991940e-16 1.724381e-01 -2.160334e-16 1.302522e-16 [3,] 1.486870e-16 9.734429e-17 2.163990e-01 -1.548971e-16 [4,] 2.798550e-16 1.318754e-16 -4.561485e-17 3.775345e-02 |