[R] subsetting a data.frame to the 'unique' of a column
Göran Broström
gb at tal.stat.umu.se
Thu Dec 23 12:14:59 CET 2004
On Thu, Dec 23, 2004 at 11:28:31AM -0800, Rudi Alberts wrote:
> Hi,
>
> I often run into this problem:
> I have a data.frame with one column containing entries that are not
> unique. What I then want is a subset of the data.frame in which
> the entries in that column have become the 'unique' of the original
> column.
> Normally I program around it by taking the unique of the column and
> making a new data.frame with it and filling the rest of the data.
>
> (By the way, when moving to the smaller data.frame for example 5 rows
> with the same value in that column will be replaced by one row for that
> value. I don't mind which of the rows now..)
>
>
> something like this, however, this gives me the complete df.
>
> df[df$colname %in% unique(df$colname),]
>
> or this, which doesnt work
>
> df[df$colname == unique(df$colname),]
>
Use 'duplicated':
> df[!duplicated(df$colname), ]
--
Göran Broström tel: +46 90 786 5223
Department of Statistics fax: +46 90 786 6614
Umeå University http://www.stat.umu.se/egna/gb/
SE-90187 Umeå, Sweden e-mail: gb at stat.umu.se
More information about the R-help
mailing list