【发布时间】:2018-01-09 07:00:41
【问题描述】:
我是 R 的初学者,这是一个非常简单的问题,但我找不到答案。
我想在表格中选择与特定模式匹配的单元格并排除其他所有内容。
示例数据:
data.t <- data.frame(ColA = c("NARG_ECOLI^Q:103", "NARG_ECOLI^NARG", "SPEB_KLEP7^Q:103"), ColB = c(NA, NA, NA), ColC = c("KLEP7^Q:103", "NARG_ECOLI^KLEP7", NA), ColD = c("RPOC_ENTFA^Q:2", NA, NA), ColE = c("Y1546_STAS1^Q:6", NA, NA))
生成这样的表:
ColA ColB ColC ColD ColE
1 NARG_ECOLI^Q:103 NA KLEP7^Q:103 RPOC_ENTFA^Q:2 NA
2 NARG_ECOLI^NARG NA NARG_ECOLI^KLEP7 <NA> NA
3 SPEB_KLEP7^Q:103 NA <NA> <NA> NA
我想只选择包含 ECOLI 的单元格。因此,所需的输出将如下所示:
ColA ColC
1 NARG_ECOLI^Q:103 NARG_ECOLI^KLEP7
2 NARG_ECOLI^NARG <NA>
一种可能的解决方案是目视检查并在我的数据中进行选择,但实际的表有几十列和几百行。任何帮助将不胜感激。提前谢谢!
【问题讨论】: