I have two df in R (meta=some redundant info)
df1:
id value1 value2 value3 value4
id1_meta_meta-meta 4.93 13.93 16.8 35.39
id2_meta_meta-meta 28.63 45.43 30.52 61.71
id3_meta_meta-meta 3.35 1.26 7.98 4.43
id4_meta_meta-meta 16.78 50.47 32.48 55.52
id5_meta_meta-meta 474.23 807.71 664.45 442.55
id6_meta_meta-meta 26.26 32.83 24.64 41.58
id7_meta_meta-meta 230.1 202.93 166.71 295.48
id8_meta_meta-meta 651.21 1282.71 1012.28 2650.21
df2:
V1
id1
id2
id3
id4
id5
Question
Trying to filter rows in df1 based on ids in df2
Code
library(dplyr)
library(stringr)
df.common = df1 %>%
filter(str_detect(id, '*_') %in% df2$V1)
error
Error in filter_impl(.data, quo) :
Evaluation error: Syntax error in regexp pattern. (U_REGEX_RULE_SYNTAX).
Desired output
df.common:
id value1 value2 value3 value4
id1_meta_meta-meta 4.93 13.93 16.8 35.39
id2_meta_meta-meta 28.63 45.43 30.52 61.71
id3_meta_meta-meta 3.35 1.26 7.98 4.43
id4_meta_meta-meta 16.78 50.47 32.48 55.52
id5_meta_meta-meta 474.23 807.71 664.45 442.55