我有正态分布的随机样本,西格玛已知。零假设是测试mu <= 500对比mu> 500 = alpha = .05级。
sigma = 100,n = 40且alpha = 0.05,我想使用1000个模拟样本来估计mu的幂函数,当t为[450,700]时,用于t检验。
然后,我想绘制mu的估计功率曲线,其中采用增量10的区间中的一系列值,即mu = 450,460 ,. 。 。 ,690700。
这是我的代码。我想有人告诉我,我在这里做的是正确的方法。我不确定我计算功率的方式是否正确。非常感谢你
##power analysis t test
set.seed()
##power analysis t test
set.seed(2017)
n<-1000
samplesize<-40
sigma<-100
## alternate hypothesis
mu<-seq(from=450,to=690,by=10)
test_t<-matrix(0,nrow=n,ncol=1)
power_t<-matrix(0,nrow=length(mu),ncol=1)
for( k in 1:length(mu))
{
for ( i in 1:n)
{
a<-rnorm(samplesize,mu[k],sigma)
test_t[i]<-(mean(a)-500)/sqrt(var(a)/length(a))
}
z_t<-qt(0.95,samplesize-1)<=test_t
power_t[k]<-length(z_t[z_t])/n
}
jpeg(file=paste("G:\\Routput\\Power analysis t test ",".jpg",sep=""))
print(plot(mu,power_t,main=("Power analysis t test"),xlab="mu",ylab="rejection rate",cex.main=1.5,cex.lab=1.5))