try this: > x <- read.table(text = " No. Change Date + A 123 final 2013-01-15 + B 123 error 2013-01-16 + C 123 'bug fixed' 2013-01-17 + D 111 final 2013-01-12" + , header = TRUE + , as.is = TRUE + ) > do.call(rbind, lapply(split(x, x$No.), function(.sec){ + .sec[which(.sec$Date == max(.sec$Date))[1L], ] + })) No. Change Date 111 111 final 2013-01-12 123 123 bug fixed 2013-01-17
On Fri, Feb 1, 2013 at 3:04 AM, Mat <matthias.we...@fnt.de> wrote: > Hello together, > > i have a data.frame, like this one: > No. Change Date > A 123 final 2013-01-15 > B 123 error 2013-01-16 > C 123 bug fixed 2013-01-17 > D 111 final 2013-01-12 > > and now a want a new data.frame which includes only the newest entry for > each number. > The solution look like this: > No. Change Date > C 123 bug fixed 2013-01-17 > D 111 final 2013-01-12 > > is there any way to filter my data.frame to the latest data, perhabs "max"? > > Thanks. > > Mat > > > > -- > View this message in context: > http://r.789695.n4.nabble.com/Filter-according-to-the-latest-data-tp4657248.html > Sent from the R help mailing list archive at Nabble.com. > > ______________________________________________ > 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. -- Jim Holtman Data Munger Guru What is the problem that you are trying to solve? Tell me what you want to do, not how you want to do it. ______________________________________________ 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.