[R] sample size for t-tests

Peter Dalgaard p.dalgaard at biostat.ku.dk
Wed Sep 1 12:02:05 CEST 2004


Adaikalavan Ramasamy <ramasamy at cancer.org.uk> writes:

> Look into the code of power.t.test in the stats package. For example,
> the sample size for two-sample t-test, two-tail testing and strict
> interpretation of tail probability can be found by solving the following
> equation iteratively :
> 
> \begin{equation}
>  1 - \beta =   \Pr ( t_{v,ncp}^{*} <  t_{v, \alpha/2 } ) 
>              + \Pr ( t_{v,ncp}^{*} >  t_{v, 1 - \alpha/2 } )
> \end{equation}
>                                           
> where :
> 
> 1) $t_{v, \alpha/2}$ is the $\alpha/2$ quantile of a central
> t-distribution with $v$ degrees of freedom and $v = n1 + n2 - 2$
> 
> 2) $t_{v,ncp}^{*}$ follows a non-central t-distribution $v$ degrees of
> freedom and non-centrality parameter of $ncp$
> 
> 3) non-centralitity parameter in 2) estimated by
> $ncp =  \delta / ( \sigma  \sqrt{ \frac{1}{n_1} + \frac{1}{n_2} } )$
> 
> As usual, $alpha$ and $beta$ represent type I and type II error and
> \delta, \sigma represents the desired difference in group means and
> variance.
> 
> This would be explained in a textbook but none comes to my mind at the
> moment. There is an approximate analytical solution based on normality
> assumption but the results are very close for large sample sizes. It is
> better to use the exact equation as the computations (via uniroot) is
> fast anyway. 

Yep, just a few nits/qualifications: 

- sigma is the standard deviation, not variance

- n1 and n2 are generally set equal in sample size calculations since
  that is known to be optimal (largest power for given n1+n2)

- all the solutions are based on normality assumptions, the analytical
  formulas come out of assuming the variance known in advance (so that
  you can use the normal distribution instead of the t distribution).
  These ignore the uncertainty from having to estimate the variance
  and so give somewhat too small sample sizes.

-- 
   O__  ---- Peter Dalgaard             Blegdamsvej 3  
  c/ /'_ --- Dept. of Biostatistics     2200 Cph. N   
 (*) \(*) -- University of Copenhagen   Denmark      Ph: (+45) 35327918
~~~~~~~~~~ - (p.dalgaard at biostat.ku.dk)             FAX: (+45) 35327907




More information about the R-help mailing list