我是 R 的新生。我想展示协方差矩阵 Σ 与特征向量和特征值之间的关系。我知道 Σ 可以分解为:∃P,∃D:Σ = PD P',其中 P 是特征向量矩阵,D 是对角矩阵,其对角线元素是相应的特征值。但我的结果与协方差矩阵不同。我的 Σ 等于相关矩阵。这是我的代码:
> data<-scale(swiss,center=T,scale=F)
> test<-princomp(data,cor=T)
> D=test$sdev
> Var=D^2
> Var
> Var=diag(Var)
> Loa=test$loadings
> Loa
> Loa=Loa[1:6,1:6]
> sigma= Loa %*% Var %*% t(Loa)
> sigma
Fertility Agriculture Examination Education Catholic Infant.Mortality
Fertility 1.0000000 0.35307918 -0.6458827 -0.66378886 0.4636847 0.41655603
Agriculture 0.3530792 1.00000000 -0.6865422 -0.63952252 0.4010951 -0.06085861
Examination -0.6458827 -0.68654221 1.0000000 0.69841530 -0.5727418 -0.11402160
Education -0.6637889 -0.63952252 0.6984153 1.00000000 -0.1538589 -0.09932185
Catholic 0.4636847 0.40109505 -0.5727418 -0.15385892 1.0000000 0.17549591
Infant.Mortality 0.4165560 -0.06085861 -0.1140216 -0.09932185 0.1754959 1.00000000
> cov(data)
Fertility Agriculture Examination Education Catholic Infant.Mortality
Fertility 156.04250 100.169149 -64.366929 -79.729510 241.56320 15.156193
Agriculture 100.16915 515.799417 -124.392831 -139.657401 379.90438 -4.025851
Examination -64.36693 -124.392831 63.646623 53.575856 -190.56061 -2.649537
Education -79.72951 -139.657401 53.575856 92.456059 -61.69883 -2.781684
Catholic 241.56320 379.904376 -190.560611 -61.698830 1739.29454 21.318116
Infant.Mortality 15.15619 -4.025851 -2.649537 -2.781684 21.31812 8.483802
>
谁能解释我的问题在哪里?非常感谢。