【发布时间】:2012-05-24 01:04:09
【问题描述】:
我正在尝试读取包含在我从网络上提取的文件中的 csv 文件。问题是压缩文件有多个级联文件夹。我必须为几个不同的单位这样做,所以我正在执行一个循环。循环没有问题,文件名正确,我可以下载文件。但是我收到一条错误消息(我认为是因为 R 找不到我要求它找到的确切文件)。错误是:
Error in open.connection(file, "rt") : cannot open the connection
In addition: Warning message:
In open.connection(file, "rt") :
cannot locate file 'XXXX.csv' in zip file 'c:\yyy\temp\bla\'
download.file(paste("http://web.com_",units[i],"_",places[j],".zip",
sep=""),
temp,
cacheOK = F )
data <- read.csv2(unz(temp,
paste("name_",units[i],"_",places[j],".csv",
sep="")),
header=F,
skip=1)
unlink(temp)
fili<-rbind(X,
data)
}
如何让 R 找到我想要的文件?
【问题讨论】:
-
我从未在 R 中处理过压缩数据,但您可以在压缩文件中将
list.files()与full.names=TRUE和recursive=TRUE组合起来以找到正确的文件吗?获得目录列表后,您可以grep找到正确 csv 文件的完整路径。也看到这个问题:stackoverflow.com/questions/8986818/…