Hi Marna, This very short function deletes everything before the last , if there is a comma. Some of your entries have comma-space and some just have comma, so it deletes the optional space as well.
lastdate <- function(x) { sub("^.*, *", "", x) } data.frame(apply(daT, 2, lastdate)) Sarah On Fri, Apr 2, 2021 at 10:15 AM Marna Wagley <marna.wag...@gmail.com> wrote: > > Dear R-Users, > I have a dataset containing more than two observation dates in some of the > columns and sites but I wanted to extract only the last date of the > observation. > Is there any easiest way to get that last observation in each column/row? > > Here is the example data: > daT<-structure(list(ID = c("M3", "M5", "M1"), Site1 = > c("12/20/2018,12/28/2018", > "12/17/18", ""), Site2 = c("", "", "1/19/2019"), Site3 = c("9/25/2019", "", > "1/10/2019, 1/11/2019, 1/17/2019")), class = "data.frame", row.names = > c(NA,-3L)) > > #I wanted to make the table like this: > output<-structure(list(ID = c("M3", "M5", "M1"), Site1 = c("12/28/2018", > "12/7/2018", ""), Site2 = c("", "", "1/19/2019"), Site3 = c("9/25/2019", > "", "1/17/2019")), class = "data.frame", row.names = c(NA, -3L)) > > Thank you for your help. > Sincerely, > MW > > [[alternative HTML version deleted]] > > ______________________________________________ > R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see > 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. -- Sarah Goslee (she/her) http://www.numberwright.com ______________________________________________ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see 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.