Regex 从data.frame中的列中查找一个字符,该列之间用“,”分隔&引用;

Regex 从data.frame中的列中查找一个字符,该列之间用“,”分隔&引用;,regex,r,Regex,R,如何发现data.frame中是否存在“Itln1”基因 chr start end Genes 1 8401 8410 Mndal,Mnda,Ifi203,Ifi202b 2 8001 8020 Cyb5r1,Adipor1,Klhl12 3 4001 4020 Alyref2,Itln1,Cd244 3 4018 5109 Itln1,DCA

如何发现data.frame中是否存在“Itln1”基因

chr   start   end         Genes   
1      8401    8410      Mndal,Mnda,Ifi203,Ifi202b    
2      8001    8020      Cyb5r1,Adipor1,Klhl12    
3      4001    4020      Alyref2,Itln1,Cd244 
3      4018    5109      Itln1,DCAF8,PEA15A")
示例数据帧

chr   start   end         Genes   
1      8401    8410      Mndal,Mnda,Ifi203,Ifi202b    
2      8001    8020      Cyb5r1,Adipor1,Klhl12    
3      4001    4020      Alyref2,Itln1,Cd244 
3      4018    5109      Itln1,DCAF8,PEA15A")

您可以使用
grep

grep('\\bItln1\\b', x1$Genes)
#[1] 3 4

@user20650它是单词边界。假设您有一个带有
12Itln12
的不同基因,而没有
\\b
,它将匹配该元素。比如说
grep('\\bItln1\\b',c('12Itln12','Itln1'))
grep('Itln1',c('12Itln12','Itln1'))
非常感谢akrun…(这就是单词边界(duh)的意思)@user20650没问题。也许这个链接可以帮你加油。。。伟大的link@user20650通过阅读,我也得到了一些新的信息:-)