2016-11-30 56 views
1

我有12个dataframes(DF1:DF12)。他们都有一个名为“基因”的专栏。我想搜索特定字符串,说“GENEX”,在“基因”列中的所有dataframes并打印带有字符串的行。grep的多个dataframes

现在我使用的代码12行做到这一点。

df1[grep("GeneX", df1$gene), ] 
df2[grep("GeneX", df2$gene), ] 
.... 
.... 

有没有办法循环所有的数据框以更有效的方式做到这一点?

回答

2

我们可以保持在list的数据集,并检查在“基因”柱grep“GENEX”,子集行。

lst <- lapply(mget(paste0("df", 1:12)), function(x) x[grep("GeneX", x$Gene),]) 
+1

完美。谢谢@akrun! –