测试R的相对效率

时间:2016-01-04 09:27:45

标签: r

我有这个问题:使用相对效率,比较符号测试和t测试。 这是我的0.85

功率测试代码
min.num.test.t<-function(n)
{
  x<-rnorm(n,0,2)
  y<-rnorm(n,0,2)
  h<-t.test(x,y,paired=TRUE,alternative="greater")$statistic
 1-pt(h,n-1)-0.85

}

min.num.segni<-function(n)
{
  x<-rnorm(n,0,2)
  h<-binom.test(x=sum(x>0), n=length(x), 
           p = 0.5, alternative ="greater")$statistic
  1-sum(dbinom(h:n,n,0.5))-0.85
}
ntest<-ceiling(uniroot(min.num.test.t,c(10,150))$root)
nsegni<-ceiling(uniroot(min.num.segni,c(17,50))$root)

ifelse((ntest/nsegni)>1,print("test segni relativamente più efficiente per una potenza del test fissata a 0.85"),print("test t relativamente più efficiente per una potenza del test fissata a 0.85"))

因此,从统计学上讲,问题是要找到最小的样本量,以便获得测试所需的功率。然后我必须验证两个计算的样本大小的比率是否大于小于1,因此得出结论。  我实现了两个函数,并且uniroot我试图解决这两个方程,以便找到样本大小。问题是当我调用uniroot函数时:它总是返回我指定的间隔的最大值,这对我来说听起来很奇怪...有人想帮我吗?感谢

0 个答案:

没有答案