Hi Benoit, You can select rows from deck matched in aCard using
merge(deck, aCard) Selecting rows that don't match is bit more difficult. You could do something like isin <- apply(mapply(function(x, y) x %in% y, deck, topCard), 1, all) deck[!isin, ] perhaps. Alternatively, you can use anti_join from the dplyr package: library(dplyr) anti_join(deck, topCard) Best, Ista On Thu, Jan 3, 2019 at 10:38 AM Benoit Galarneau <benoit.galarn...@polymtl.ca> wrote: > > Hi everyone, > I'm new to the R world. > Probably a newbie question but I am stuck with some concept with data frame. > I am following some examples in the "Hands-On Programming with R". > > In short, how can I access/filter items in a data frame using a variable. > > One example consists of manipulating elements from a deck of card: > > > deck > face suit value > 1 king spades 13 > 2 queen spades 12 > 3 jack spades 11 > 4 ten spades 10 > etc. > > Let's say I want to remove or filter out the first card. I know I > could do deck[-1]. > > But let's say I have: topCard <- deck[1,] > > topCard is then a list of 3 elements > > topCard > face suit value > 1 king spades 13 > > My question is the following, how can I remove or filter out the deck > using the topCard variable. > > In my programmer's head, something similar to this should "work": > > deck[10,] > face suit value > 10 four spades 4 > > aCard <- deck[10,] > > aCard > face suit value > 10 four spades 4 > > deck[aCard] > Error in `[.default`(deck, aCard) : invalid subscript type 'list' > > Wihout having to specify all elements in the logical tests. > > deck[deck$face == aCard$face & deck$suit == aCard$suit & deck$value == > aCard$value,] > face suit value > 10 four spades 4 > > ______________________________________________ > 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. ______________________________________________ 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.