On Sep 12, 2009, at 11:36 AM, caroline choong wrote:

Dear all,
I have a data set as follows:

        ID               cycle.number      cycle.result
1     2525                      1                   38
2     2525                      2                   38
3     2525                      3                   25
4     2525                      4                   25
5     2525                      5                   25
6     2525                      6                   25
7     2531                      1                   38
8     2531                      2                   38
9     2078                      1                   38
10    2078                      2                   38

I want to find out the maximum cycle.number for each ID, and later find the
corresponding cycle.result for that cycle.

I have already managed to pull out the maximum cycle by using a for loop:

max.cycle <- vector()
patients <- (levels(factor(ID)))
for (i in 1:length(patients)) {

max.cycle[i] <- max(cycle.number[(ID %in% patients[i] )])

}

But i would like to know if there is a better or more elegant way of pulling
out the maximum cycle.number for each ID?

There is:

?tapply

> patients <- read.table(textConnection(" ID cycle.number cycle.result
+ 1     2525                      1                   38
+ 2     2525                      2                   38
+ 3     2525                      3                   25
+ 4     2525                      4                   25
+ 5     2525                      5                   25
+ 6     2525                      6                   25
+ 7     2531                      1                   38
+ 8     2531                      2                   38
+ 9     2078                      1                   38
+ 10    2078                      2                   38"), header=TRUE)

> tapply(patients$cycle.number, patients$ID, max)
2078 2525 2531
   2    6    2


Perhaps without the need for using
a for loop?

Many thanks,


David Winsemius, MD
Heritage Laboratories
West Hartford, CT

______________________________________________
R-help@r-project.org 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