【发布时间】:2020-05-29 10:02:11
【问题描述】:
我有一个数据框,并希望根据第一列中名称与向量中名称的部分匹配来过滤它。
nam <- c('mmu_mir-1-3p','mmu_mir-1-5p','mmu-mir-3-5p','mir-4','mmu-mir-6-3p') #factor
aa <- c('12854','36','5489','54485','2563') #numeric
df <- data.frame(nam,aa)
vector <- c('mir-1','mir-3','mir-6')
我需要在df$nam 中的名称与vector 中的名称部分匹配的新数据框中包含行。所以new_df 应该是这样的。
new_nam <- c('mmu_mir-1-3p','mmu_mir-1-5p','mmu-mir-3-5p','mmu-mir-6-3p') #factor
new_aa <- c('12854','36','5489','2563') #numeric
new_df <- data.frame(new_nam,new_aa)
【问题讨论】:
-
不是直接关于这个问题,而是为什么你有数字列作为字符串?
-
再举几个例子(不是完全重复,而是类似的想法)here
-
数字列不是第一列的值,它们应该是字符串
-
由于名称的结构不同,由于某些原因,我在新的 df 中丢失了几行
标签: r dataframe filter match partial