如何一次将一个目录中的所有文件读入R?

时间:2014-01-27 14:04:03

标签: r

我有文件夹,其中包含大约200个.txt文件。我想读取所有文件并选择每个文件的第二列并将它们放在一个矩阵中。 (rbind()) 是否有任何命令一次读取所有文件?

我想用:

data<-read.table ("", header= T, sep=",")

1 个答案:

答案 0 :(得分:10)

有三个步骤:

  1. 通过list.files
  2. 获取所有文件名
  3. 使用lapply读取列表中的所有文件
  4. do.call rbind所有数据用于单个数据框或矩阵
  5. 代码:

    nm <- list.files(path="path/to/file")
    do.call(rbind, lapply(nm, function(x) read.table(file=x)[, 2]))
    

    使用[]进行子集是任意的,此示例仅适用于第二列。