
 
Hi,
 
I am new in R and stumbled on a problem my (more experienced) friends
can not help with with. Why isnt this code working?
 
The function is working, also with the loop and the graph appears, 

only when I build another loop around it  (for different values of p) ,
R stays in a loop?

Can't it take more then 2 loops in one program?

 
powerb<-function(x,sp2,a,b,b1,m)
{   sx<-(sum(x^2)-(sum(x)^2)/length(x))/length(x)
    n0<-ceiling((((qnorm(1-(a/2))+qnorm(1-b))/b1)^2)*(((m+1)/m)*sp2/sx))
    repeat
    {
n1<-ceiling((((qt(1-(a/2),n0-4)+qt(1-b,n0-4))/b1)^2)*(((m+1)/m)*sp2/sx))
        if(n0==n1) break
        n0<-n1
    }
    return(c(sx,n1))
}

x<-rnorm(1000,0,1)
x<-x[order(x)]
 
res<-matrix(0,1000,2)
 

#use the function and plot  for different values of ind and p 
for ( p in c(0.05,0.10,0.15,0.20,0.25,0.30,0.40,0.50)) 
{  risk<-p*(2-p)
nonrisk<-(1-p)^2
m<-nonrisk/risk
 
for (ind in 1:500)
{res[ind,]<-powerb(x[c(1:(500-ind),(500+ind):1000)],4,0.05,0.20,0.1,m)}
 
plot(res[,1],res[,2],type="p",ylab="n",xlab="var(x)",main="b=0.1,power=0
.80,alpha=0.05,dominant met p=0.25")} 

 
 
 I would appreciate the help,
 
Marco
 

MPM Boks, MD PhD,

Department of Psychiatry, B01.206

University Medical Centre Utrecht,

PO box 85500, 3508 GA Utrecht

The Netherlands.

Tel: +31 30 2506370

Fax: +31 30 2505509

Email: m.p.m.boks@umcutrecht.nl <mailto:m.p.m.boks@umcutrecht.nl> 

 

	[[alternative HTML version deleted]]

