I suggest that you forget all that fancy stuff (and this is not a use case for regular expressions). Use %in% with logical subscripting instead -- basic R functionality that can be found in any good R tutorial.
> x <- c("ab","bc","cd") > x[x %in% c("ab","cd")] [1] "ab" "cd" > x[!x %in% c("ab","cd")] [1] "bc" Bert Gunter "The trouble with having an open mind is that people keep coming along and sticking things into it." -- Opus (aka Berkeley Breathed in his "Bloom County" comic strip ) On Wed, Jun 3, 2020 at 7:56 AM Ana Marija <sokovic.anamar...@gmail.com> wrote: > Hello. > > I am trying to filter only rows that have ANY of these variables: > E109, E119, E149 > > so I did: > controls=t %>% filter_all(any_vars(. %in% c("E109", "E119","E149"))) > > than I checked what I got: > > s0 <- sapply(controls, function(x) grep('^E10', x, value = TRUE)) > > d0=unlist(s0) > > d10=unique(d0) > > d10 > [1] "E10" "E103" "E104" "E109" "E101" "E108" "E105" "E100" "E106" "E102" > [11] "E107" > s1 <- sapply(controls, function(x) grep('^E11', x, value = TRUE)) > d1=unlist(s1) > d11=unique(d1) > > d11 > [1] "E11" "E119" "E113" "E115" "E111" "E114" "E110" "E118" "E116" "E112" > [11] "E117" > > I need help with changing this command > controls=t %>% filter_all(any_vars(. %in% c("E109", "E119","E149"))) > > so that in the output I do not have any rows that include E102 or E112? > > Thanks > Ana > > ______________________________________________ > 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. > [[alternative HTML version deleted]] ______________________________________________ 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.