[R] Removing rows in dataframe w'o duplicated values

Dennis Murphy djmuser at gmail.com
Tue Nov 22 19:38:16 CET 2011


Hi:

Here's one way:

do.call(rbind, lapply(L, function(d) if(nrow(d) > 1) return(d)))
    id value value2
1.1  1     5      1
1.2  1     6      4
1.3  1     7      3
3.5  3     5      4
3.6  3     4      3

HTH,
Dennis

On Tue, Nov 22, 2011 at 9:43 AM, AC Del Re <delre at wisc.edu> 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 at 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.
>



More information about the R-help mailing list