2016-11-30 40 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! –