R: Subset by multiple criteria filter -


i have df1:

city        freq seattle      20 san jose     10 seattle       5 san jose     15 miami        12 

i created dataframe using table(df)

i have df2:

city san jose  miami 

i want subset df1 if city values in df1 equal in df2. df2 sample can't use or condition ( " | " ) because have many different criteria. perhaps convert df2 vector.. i'm not sure how this. as.vector() doesn't seem work.

i thought using

subset(df1, city == df2) 

but gives me errors.

also, if guys me way make case insensitive such "san jose" , "san jose" added together, better!

if use "toupper / tolower", error: invalid multibyte

thanks in advance!!

here few more methods

r code:

# method 1: using dplyr package library(dplyr) filter(df1, tolower(df1$city) %in% tolower(df2$city)) df1 %>% filter(tolower(df1$city) %in% tolower(df2$city))  # method 2: using function df1[ which( tolower(df1$city) %in% tolower(df2$city)) , ]  # method 3: df1[(tolower(df1$city) %in% tolower(df2$city)), ] 

output:

      city freq 2 san jose   10 4 san jose   15 5    miami   12 

hope helps.


Comments

Popular posts from this blog

javascript - Bootstrap Popover: iOS Safari strange behaviour -

Magento/PHP - Get phones on all members in a customer group -

session - Logging Out Using PHP -