如何从R中的那些目录中选择目录列表和读取文件

时间:2014-07-10 10:24:24

标签: r

我正在尝试选择一些特定目录并从每个目录中读取一个特定文件。

以下是目录和文件的示例

|-out_original
|-----result_file
|-out_20percent_ds
|-----result_file
|-out_40percent_ds
|-----result_file
|-out_60percent_ds
|-----result_file
|-out_80percent_Ds
|-----result_file

代码

setwd("/home/data/proj/")
datatype = c("20","40","60","80","original")
filenames=as.vector(c(0))

for (i in 1:length(datatype))
{
    if(i <= 5){
        filenames[i]=paste0("out_",datatype[i],"percent_ds/")
    }

    else{   
        filenames[i]=paste0("out_",datatype[i])
    }
}

如何将文件保存到每个目录的变量中?

1 个答案:

答案 0 :(得分:1)

尝试使用list.files。如果工作目录是您显示的目录的根目录,则可以使用链接:

my.files <- 
  list.files(path = "./", pattern = "result_file", 
             full.names = TRUE, recursive = TRUE)

以递归方式搜索名称中包含"result_file"格式path的文件。 pattern可以是任何正则表达式,只返回与此正则表达式匹配的文件。

然后,您可以使用类似

的内容来阅读文件
ans <- lapply(my.files, read.table)

假设您的数据是表格式的。