- 问题: 当你想要问问题时,请使用这个类别
[问题类型]:
效能咨询(我想让R 跑更快)
[软件熟悉度]:
请把以下不需要的部份删除
开发者(有撰写R 的套件经验)
[问题叙述]:
一个简单的问题
一堆字串中,想要撷取/筛选复数条件的字串
例如
"./zw1_agriculture.txt"
"./zw1_agriculture.txt.xml"
"./zw1_bareland.txt"
"./zw1_bareland.txt.xml"
"./zw1_built_up.txt"
"./zw1_built_up.txt.xml"
"./zw1_forest.txt"
"./zw1_forest.txt.xml"
"./zw1_mining.txt"
"./zw1_mining.txt.xml"
"./zw1_watersurface.txt"
"./zw1_watersurface.txt.xml"
等等
只有下面的方法吗?
for(i in c("mining","watersurface","xml")) f = f[grep(i, f, invert = TRUE)]
我试着用lapply,但最后还需要取交集,不算好用,不如用for.
f = lapply(c("mining","watersurface","xml"),
FUN=function(x){f = f[grep(x, f, invert = TRUE)]; return(f)})
[关键字]:
grep, 复选