我一直在寻找许多主题的问题解决方案,但我找不到答案。我有十几个文件,我试图从目录中读取,但似乎没有任何工作。 我首先尝试了这个:
files <- list.files(path="../..")
files1 <- lapply(files, read.table, header=TRUE, sep="", skip=5)
和此:
files <- list.files(path="../..")
for (i in 1:length(files)) {
files1 <- read.table(files[i], header=TRUE, sep="",skip=5)
}
它说错误文件(文件,“rt”)无法打开这样的文件或目录,但是当我执行&gt;文件时,它会列出所有文件。
哪里出错了? TX
答案 0 :(得分:4)
list.files
为您提供文件名,您需要整个路径名。
一种选择是将完整路径粘贴到文件列表:paste("path/to/files/", files, sep="/")
正如@BenBarnes指出的那样,另一个选择是使用full.names
中的list.files()
参数
答案 1 :(得分:0)
我更喜欢将plyr
包用于此类事情。根据您计划使用文件的方式,您可能需要使用不同的l * ply函数:
require(plyr)
files <- dir("../..", full= TRUE)
data <- llply(files, read.table, header= T, sep= "", skip= 5)
这将为您提供12个(或多个)数据集的列表。