[R] power.t.test formula

Peter Dalgaard P.Dalgaard at biostat.ku.dk
Fri Apr 24 15:05:07 CEST 2009


Usuario R wrote:
> Hello,
> Thank you, but can you understand this result? first I calculate the sd
> for n = 2 and then n with that sd. It should give me 2 right?
> 
>> FC = 1.5
>> alfa = 0.01
>> power = 0.85
>> sd1 <-   power.t.test( n = 2, delta = FC, sig.level = alfa,
> +                    power = power, type = "two.sample", sd = NULL)$sd
>>
>>   n1 <- round( power.t.test( n = NULL, delta = FC, sig.level =
> alfa,power = power, type = "two.sample", sd = sd1)$n)
> Error in uniroot(function(n) eval(p.body) - power, c(2, 1e+07)) :
>   f() values at end points not of opposite sign

The error message pretty much says it: uniroot is looking for a root
between 2 and 1e7 and complains that the root is not properly bracketed.
 If the root is supposed to be AT 2, then this easily happens due to
rounding issues. (This could have better error trapping, but you're
really not expected to be planning studies with such low n.)

-- 
   O__  ---- Peter Dalgaard             Øster Farimagsgade 5, Entr.B
  c/ /'_ --- Dept. of Biostatistics     PO Box 2099, 1014 Cph. K
 (*) \(*) -- University of Copenhagen   Denmark      Ph:  (+45) 35327918
~~~~~~~~~~ - (p.dalgaard at biostat.ku.dk)              FAX: (+45) 35327907




More information about the R-help mailing list