我从压缩的源文件中读取大量文件到R中。我尝试使用R函数unz
来读取压缩文件,因为与解压缩不同,它不会在我的硬盘上留下任何解压缩文件。R read.dta和unz无法正常工作
然而,这似乎并不为拉链*.dta
(塔塔)文件的工作:
library(foreign)
temp <- tempfile()
download.file("http://databank.worldbank.org/data/download/WDI_csv.zip", temp)
wdi_unz <- read.csv(unz(temp, "WDI_Data.csv"))
unlink(temp)
temp <- tempfile()
download.file("http://www.rug.nl/research/ggdc/data/pwt/v80/pwt80.zip",temp)
pwt_unzip <- read.dta(unzip(temp, "pwt80.dta"))
pwt_unz <- read.dta(unz(temp, "pwt80.dta"))
unlink(temp)
对不起,使用相当大的世界发展指标数据库(它的40+ MB),但我没有发现任何更好的工作示例。
该代码在读取pwt_unz
时会产生错误,[编辑:但不是在读取pwt_unzip
时]。那里有什么问题?可能它与unz
的返回值与read.dta的输入不兼容有关系吗?
UNZ只能在二进制模式。 dta文件是二进制文件吗? – Leehbi 2015-02-11 15:11:21