计算以R中的前缀开头的数据帧数

时间:2015-01-26 22:51:09

标签: r dataframe

我有一组我在R中生成的数据框。我需要计算名称以" entry _"开头的数据框的数量。我想生成一个数字,然后用于一个只能绑定所有这些数据帧和这些数据帧的函数。

到目前为止,我已经尝试使用grep来识别数据帧,但是,这只会返回它们在我的对象列表中被索引的位置(例如,16:19 ---对象16-19以&#34开头; entry_& #34):

count_entry <- (grep("entry_", objects()))

最终我想像所有这些数据框一样:

list.make <-  function() { 
     sapply(paste('entry_', seq(1:25), sep=''), get, environment(), simplify = FALSE) 
}

all.entries <- list.make()
final.data <- rbind.fill(all.entries)

我不想每次都要手动输入序列(例如上面代码中的(1:25)),这就是我希望能够自动计算数据的原因以&#34; entry _&#34;开头的帧

如果有人对如何解决这个问题有任何想法,或者如何以更好的方式解决这个问题,我全都耳朵!

1 个答案:

答案 0 :(得分:0)

docendo的每条评论:ls函数将列出与正则表达式模式匹配的环境中的对象。然后,您可以使用mget将这些对象检索为列表:

mylist <- mget(ls(pattern = "^entry_"))

这将与rbind.fill一起使用。然后,您可以使用类似的内容删除原始对象:rm(ls(pattern = "^entry_"))