[R] subsets, %in%
Erik Iverson
eriki at ccbr.umn.edu
Fri Nov 5 19:22:33 CET 2010
Well, %in% returns a logical vector...
So
subset(dat, ! ID %in% someID)
Also, from ?subset:
Note
that ‘subset’ will be evaluated in the data frame, so columns can
be referred to (by name) as variables in the expression
Thus, you don't need 'dat$ID', bur just 'ID' in the subset argument.
-Erik
MP.Sylvestre at gmail.com wrote:
> Hi,
>
> I have a question about %in% and subsettin data frames.
>
> Say I need to keep ID 1,2,4,5, 10 from the data frame dat. I can do:
>
> dat <- data.frame(ID = 1:10, var = 1:10)
> someID <- c(1,2,4,5,10)
> subset(dat, dat$ID %in% someID)
>
> Is there a quick way to do the opposite, ie to do a subset that contains
> all ID but someID? Something like %not in%, which would *remove* lines with
> ID in someID?
>
> I am asking because I need this in a more complex example where there are
> multiple lines with the same ID (data in long format) and I need to remove
> selected ID.
>
> thanks,
>
> MP
>
> [[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