@EZGraphs 在 Twitter 上写道:
“很多在线 csv 都被压缩了。有没有办法下载、解压缩存档并使用 R 将数据加载到 data.frame?#Rstats”
我今天也尝试这样做,但最终只是手动下载 zip 文件。
我尝试过类似的东西:
fileName <- "http://www.newcl.org/data/zipfiles/a1.zip"
con1 <- unz(fileName, filename="a1.dat", open = "r")
但我感觉好像我还差得很远。
有什么想法吗?
Zip 档案实际上更像是一个包含内容元数据等的“文件系统”。请参阅help(unzip)
了解详情。因此,要做上面列出的事情,您需要
- 创建一个临时。文件名(例如
tempfile()
)
- Use
download.file()
将文件提取到临时目录中。文件
- Use
unz()
从 temp 中提取目标文件。文件
- 通过删除临时文件
unlink()
在代码中(感谢基本示例,但这更简单)看起来像
temp <- tempfile()
download.file("http://www.newcl.org/data/zipfiles/a1.zip",temp)
data <- read.table(unz(temp, "a1.dat"))
unlink(temp)
压缩(.z
)或压缩(.gz
) 或 bzip2ed (.bz2
)文件是只是文件以及您可以直接从连接读取的内容。所以让数据提供者使用它:)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)