【问题标题】:importing several text files into R将几个文本文件导入 R
【发布时间】:2012-05-21 08:37:39
【问题描述】:

我有四个文件夹,其中包含同名的文本文件(制表符分隔),我想将所有这些文本文件导入 data.frame。例如:

TopFolder = "G:\\University" 
SubFolder = list.files(TopFolder)
#find the name of the folders in the current directory
DateTime = rbind(read.table(paste(TopFolder,SubFolder[1],"Data.txt",sep = "\\"),sep="\t"),
                read.table(paste(TopFolder,SubFolder[2],"Data.txt",sep = "\\"),sep="\t"),
                 read.table(paste(TopFolder,SubFolder[3],"Data.txt",sep = "\\"),sep="\t"),
                 read.table(paste(TopFolder,SubFolder[4],"Data.txt",sep = "\\"),sep="\t"))

这个例子运行良好,虽然我希望使用循环或其他函数来生成这个变量,而不必单独导入所有文件。有没有人有什么建议?

【问题讨论】:

    标签: r import


    【解决方案1】:

    这个怎么样?

    lf = list.files(path = "G:\\University", pattern = "Data.txt", 
                    full.names = TRUE, recursive = TRUE, include.dirs = TRUE)
    
    library(plyr)
    DateTime = ldply(lf, read.table, sep = "\t")
    

    【讨论】:

    • 效果很好。这怎么能被改变来导入几个文本文件。假设我想先导入 Data.txt,然后想导入 Data2.txt,它的存储方式与 Data.txt 相同(即在不同的文件夹中)?
    • 可以用合适的正则表达式修改list.files中的模式,见?regex
    猜你喜欢
    • 1970-01-01
    • 2014-09-26
    • 2016-06-10
    • 1970-01-01
    • 2016-10-23
    • 1970-01-01
    • 2021-09-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多