1

如何通过特征值创建协方差矩阵,以便莫赫利检验表明拒绝原假设。是否存在产生 rv 的实验设计的协方差矩阵模式,从而违反了球形假设?如果我通过给定的特征值计算任意协方差矩阵,并且对于该矩阵,我通过以下源代码进行实验,那么 mauchlys 检验有时会拒绝原假设。如何模拟违反球形假设的正态分布数据?

require(corpcor)
require(reshape2)
require(mvtnorm)

getCovariance<-function(lambda){
   j<-1
   Sigma<--1
   while(any(Sigma<=0)){    
      set.seed(j)
  X<-matrix(rnorm(50*length(lambda)),50,length(lambda))  
  R<-cor(X)           
  P<-eigen(R)$vector 
  Sigma<-t(P)%*%diag(lambda)%*%P   
      j<-j+1
   }             
   Sigma
 }

 subject<-50
 treatment<-4
 set.seed(1)
 lambda<-sample(1:subject,treatment)
 cov<-getCovariance(lambda)
 exp<-rmvnorm(mean=rep(0,treatment),sigma=cov,n=subject,method="chol")
 fit<-lm(exp~1)
 mauchly.test(fit,X=~1)
4

0 回答 0