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

Zac*_*ach 8 connection zip r

这个问题的后续内容:如何使用R下载和解压缩gzip压缩文件?例如(来自UCI机器学习库),我有一个保险数据文件.如何使用R下载?

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

JD *_*ong 19

我喜欢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)
Run Code Online (Sandbox Code Playgroud)

list.files()应产生是这样的:

[1] "TicDataDescr.txt" "dictionary.txt"   "ticdata2000.txt"  "ticeval2000.txt"  "tictgts2000.txt" 
Run Code Online (Sandbox Code Playgroud)

如果你需要为很多文件自动化这个过程,你可以解析它.


Ram*_*ath 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))
Run Code Online (Sandbox Code Playgroud)

  • 我很了解Dirk.但按此计算,如果所有重要的问题都是答案背后的基本概念,那么关于SO的几个问题将不得不关闭.根据我的拙见,想要提取下载档案的读者将无法根据其他问题达到目的.我不想延长这个讨论,但是如果有其他几个人认为这是一个简单的扩展和重复,请随时关闭这个问题. (3认同)