Try this: > x <- read.table(text = "Product Price Year_Month PE + A 100 201012 -2 + A 98 201101 -3 + A 97 201102 -2.5 + B 110 201101 -1 + B 100 201102 -2 + B 90 201103 -4", header = TRUE, as.is = TRUE) > do.call(rbind + , lapply(split(x, x$Product), tail, 1) + ) Product Price Year_Month PE A A 97 201102 -2.5 B B 90 201103 -4.0 >
On Fri, Mar 15, 2013 at 5:56 AM, Tammy Ma <metal_lical...@live.com> wrote: > Hi, > > I have data frame like this: > > Product Price Year_Month PE > A 100 201012 -2 > A 98 201101 -3 > A 97 201102 -2.5 > B 110 201101 -1 > B 100 201102 -2 > B 90 201103 -4 > > > How can I achieve the following result using R: > Product Price Year_Month PE > A 97 201102 -2.5 > B 90 201103 -4 > > in other words, list the all products' information of the latest month? > > Thanks for your help. > > Kind regards, > Lingyi > > > > > > [[alternative HTML version deleted]] > > ______________________________________________ > 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. [[alternative HTML version deleted]] ______________________________________________ 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.