使用R下载gzip压缩数据文件,提取和导入数据

时间:2011-08-12 18:40:46

标签: r zip connection

this question的后续跟进:如何使用R下载和解压缩gzip压缩文件?例如(来自the UCI Machine Learning Repository),我有一个file of insurance data。如何使用R?

下载它

以下是数据网址:http://archive.ics.uci.edu/ml/databases/tic/tic.tar.gz

3 个答案:

答案 0 :(得分:18)

我喜欢Ramnath的方法,但我会使用像这样的临时文件:

tmpdir <- tempdir()

url <- 'http://archive.ics.uci.edu/ml/databases/tic/tic.tar.gz'
file <- basename(url)
download.file(url, file)

untar(file, compressed = 'gzip', exdir = tmpdir )
list.files(tmpdir)

list.files()应该产生这样的东西:

[1] "TicDataDescr.txt" "dictionary.txt"   "ticdata2000.txt"  "ticeval2000.txt"  "tictgts2000.txt" 
如果您需要为大量文件自动执行此过程,则可以解析

答案 1 :(得分:7)

这是一种快速的方法。

# create download directory and set it
.exdir = '~/Desktop/tmp'
dir.create(.exdir)
.file = file.path(.exdir, 'tic.tar.gz')

# download file
url = 'http://archive.ics.uci.edu/ml/databases/tic/tic.tar.gz'
download.file(url, .file)

# untar it
untar(.file, compressed = 'gzip', exdir = path.expand(.exdir))

答案 2 :(得分:2)

请注明help(download.file)的内容。如果有问题的文件只是一个gzip压缩文件,那么您可以将完整的URL提供给read.table()等。