This is ugly, but it gets what you want. dat[which(dat[,1] %in% unique((dat[duplicated(dat[,1], fromLast = T), 1]))),]
AC Del Re wrote > > Hi, > > Is there an easy way to remove dataframe rows without duplicated values of > a specified column ('id')? e.g., > > dat <- data.frame(id = c(1,1,1,2,3,3), value = c(5,6,7,4,5,4), value2 = > c(1,4,3,3,4,3)) > dat > > id value value2 > 1 1 5 1 > 2 1 6 4 > 3 1 7 3 > 4 2 4 3 > 5 3 5 4 > 6 3 4 3 > > > This is sample data and the real data has hundreds of rows. In this > case, only row 4 does not have a duplicated id and I would like to > remove it without using: > > > dat$id[4] <- NULL > > > Any help is appreciated! > > > AC > > [[alternative HTML version deleted]] > > ______________________________________________ > R-help@ 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. > -- View this message in context: http://r.789695.n4.nabble.com/Removing-rows-in-dataframe-w-o-duplicated-values-tp4096582p4096672.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.