Thanks for everyone's suggestions.

I did try

 results <-apply(raw.sample,1,function(x) t.test(x[,alive],x[,dead]))

However, I get:

"Error in x[, alive] : incorrect number of dimensions"

Full disclosure, raw.sample is a data.frame, and I am using alive and dead
as indexing vectors.

On the other hand, the lapply suggestion works better.

results <- lapply(1:nrow(raw.sample), function(i) t.test(raw.sample
[i,alive],raw.sample[i,dead]))

Thanks,
Andrew


 On 6/4/07, Peter Dalgaard <[EMAIL PROTECTED]> wrote:

> Petr Klasterecky wrote:
> > Andrew Yee napsal(a):
> >
> >> Hi, I'm interested in using apply() with t.test() on a data.frame.
> >>
> >> Specifically, I'd like to use apply() to do the following:
> >>
> >>  t.test(raw.sample[1,alive],raw.sample[1,dead])
> >> t.test(raw.sample[2,alive],raw.sample[2,dead])
> >>  t.test(raw.sample[3,alive],raw.sample[3,dead])
> >> etc.
> >>
> >> I tried the following,
> >>
> >> apply(raw.sample,1,function(x) t.test(raw.sample[,alive],raw.sample
> [,dead]))
> >>
> >
> > Two comments:
> > 1) apply() works on arrays. If your dataframe only has numeric values,
> > turn it (or its copy) to a matrix via as.matrix(). If it has mixed
> > variables, take only the numeric part for t-tests. The conversion is
> > made implicitly but explicit asking for it cannot hurt.
> > 2) the main problem - you are using a wrong argument to t.test
> >
> > The call should look like
> > apply(as.matrix(raw.sample), 1, function(x){t.test(x[alive], x[dead])})
> >
> > assuming 'alive' and 'dead' are logical vectors of the same length as
> 'x'.
> >
> > Petr
> >
> Notice also that the other apply-style functions may give an easier
> route to the goal:
>
> lapply(1:N, function(i) t.test(raw.sample[i,alive],raw.sample[i,dead]))
>
> or (maybe, depends on raw.sample being a data frame and alive/dead being
> indexing vectors)
>
> mapply(t.test, raw.sample[,alive], raw.sample[,dead])
>
> >
> >> but it gives me a list of identical results.
> >>
> >>
> >> Thanks,
> >> Andrew
> >>
> >>      [[alternative HTML version deleted]]
> >>
> >> ______________________________________________
> >> [email protected] mailing list
> >> 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.
> >>
> >>
> >
> >
>
>
> --
>   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
> ~~~~~~~~~~ - ([EMAIL PROTECTED])                  FAX: (+45)
> 35327907
>
>

        [[alternative HTML version deleted]]

______________________________________________
[email protected] mailing list
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