Dear Peter,

Yes, It is a technical issue and a matter of diddling around. And I
agree with your comment regarding the 2 observations.
I have several thousands variance estimates for which I need to
compute the sample sizes automatically. Using try statements is
typically the last thing I would like to resort too.
Is there an alternative implementation of power.t.test on CRAN which
could the diddling for me and return plausible sample sizes i.e.
integers.

best regards
Witek

On Fri, 4 Oct 2019 at 16:28, peter dalgaard <pda...@gmail.com> wrote:
>
> This is mainly a technical issue with uniroot trying to go outside of its 
> interval: (2, 1e7)
>
> It is fairly easy to find an approximate solution by diddling a little by 
> hand:
>
> > power.t.test(delta = 0.5849625, sd=0.01, n=1.04, sig.level=0.05)$power
> [1] 0.8023375
>
> Notice, however, that 1.04 observations in each group makes no sense at all. 
> In order to actually do a t-test you need at least 2 observations per group 
> (since we assume equal group sizes) or you have no variance estimate. Already 
> at sd=0.1, you are crossing the n=2 border, so for any smaller sd, you will 
> just get higher power with n=2. (Also, anything with single-digit degrees of 
> freedom for variance is probably expecting rather much regarding to Gaussian 
> distribution of your data.)
>
> -pd
>
> > On 4 Oct 2019, at 14:30 , Witold E Wolski <wewol...@gmail.com> wrote:
> >
> > Hi,
> >
> > power.t.test works for some range of input parameters but fails otherwise.
> >
> >> power.t.test(delta = 0.5849625, sd=0.1, power=0.8, sig.level=0.05)$n
> > [1] 1.971668
> >> power.t.test(delta = 0.5849625, sd=0.05, power=0.8, sig.level=0.05)$n
> > [1] 1.620328
> >> power.t.test(delta = 0.5849625, sd=0.01, power=0.8, sig.level=0.05)$n
> > Error in uniroot(function(n) eval(p.body) - power, c(2, 1e+07), tol = tol,  
> > :
> >  did not succeed extending the interval endpoints for f(lower) * f(upper) 
> > <= 0
> > In addition: Warning message:
> > In qt(sig.level/tside, nu, lower.tail = FALSE) : NaNs produced
> >
> > I guessing that sd is very small compared with delta, hence the
> > problem. But what are allowed values (ratios) of delta and sd?
> >
> > Best
> > Witek
> >
> >
> >
> >
> >
> >
> > --
> > Witold Eryk Wolski
> >
> > ______________________________________________
> > R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
> > https://stat.ethz.ch/mailman/listinfo/r-help
> > PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> > and provide commented, minimal, self-contained, reproducible code.
>
> --
> Peter Dalgaard, Professor,
> Center for Statistics, Copenhagen Business School
> Solbjerg Plads 3, 2000 Frederiksberg, Denmark
> Phone: (+45)38153501
> Office: A 4.23
> Email: pd....@cbs.dk  Priv: pda...@gmail.com
>
>
>
>
>
>
>
>
>


-- 
Witold Eryk Wolski

______________________________________________
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to