Home > Net >  How to filter a dataframe using a preset vector in R
How to filter a dataframe using a preset vector in R

Time:02-03

In the dataframe below, I want to filter column code using a preset vector x

# dataframe
set.seed(123)
code <- c(5001,5001,5250,5250,5425,5425,5610,5610,5910,5910)
state <- c("PA","PA","DE","DE","NY","NY","NJ","NJ","CO","CO")
rev_1990 <- runif(10, min=1000000, max=10000000000)
rev_1991 <- runif(10, min=1000000, max=10000000000)
rev_1992 <- runif(10, min=1000000, max=10000000000)

df <- data.frame(code, state, rev_1990,rev_1991,rev_1992)
df

# preset vector
x <- c(5250,5610,5910)
x

My attempt returns only unique rows of x, I want to return all rows containing x

library(dplyr)

df%>% 
  filter(code == x) # this returns 3 rows instead of 6 rows

Thanks for your attempt

CodePudding user response:

Use %in%:

df %>% 
  filter(code %in% x)
  •  Tags:  
  • Related