Converting to "times" class we can use trunc.times to truncate to 15 minutes and then use tapply to get the indices, ix.
> library(chron) > tc <- times(mytime) > ix <- tapply(seq_along(tc), trunc(tc, "00:15:00"), head, 1) > tc[ix] [1] 12:00:00 12:15:05 12:30:01 12:45:01 13:00:00 13:15:02 Note that "times" class assumes hour cannot be greater than 23 which is ok at least for the data in your example. On Thu, Aug 13, 2009 at 4:10 PM, Tim Clark<mudiver1...@yahoo.com> wrote: > Dear List, > > I have a data frame of data taken every few seconds. I would like to subset > the data to retain only the data taken on the quarter hour, and as close to > the quarter hour as possible. So far I have figured out how to subset the > data to the quarter hour, but not how to keep only the minimum time for each > quarter hour. > > For example: > mytime<-c("12:00:00","12:00:05","12:15:05","12:15:06","12:20:00","12:30:01","12:45:01","13:00:00","13:15:02") > subtime<-grep(pattern="[[:digit:]]+[[:punct:]]00[[:punct:]][[:digit:]]+|[[:digit:]]+[[:punct:]]15[[:punct:]][[:digit:]]+|[[:digit:]]+[[:punct:]]30[[:punct:]][[:digit:]]+|[[:digit:]]+[[:punct:]]45[[:punct:]][[:digit:]]+",mytime) > mytime[subtime] > > [1] "12:00:00" "12:00:05" "12:15:05" "12:15:06" "12:30:01" "12:45:01" > "13:00:00" "13:15:02" > > This gives me the data taken at quarter hour intervals (removes 12:20:00) but > I am still left with multiple values at the quarter hours. > > I would like to obtain: > > "12:00:00" "12:15:05" "12:30:01" "12:45:01" "13:00:00" "13:15:02" > > Thanks! > > Tim > > > > > Tim Clark > Department of Zoology > University of Hawaii > > ______________________________________________ > 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. > ______________________________________________ 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.