Использование R для загрузки сжатого файла данных, извлечения и импорта данных - PullRequest
8 голосов
/ 12 августа 2011

A ответ на вопрос на этот вопрос : Как я могу скачать и распаковать сжатый файл, используя R? Например (из хранилища машинного обучения UCI ) у меня есть файл страховых данных . Как я могу скачать его с помощью R?

Вот URL данных: http://archive.ics.uci.edu/ml/databases/tic/tic.tar.gz.

Ответы [ 3 ]

19 голосов
/ 12 августа 2011

Мне нравится подход Рамната, но я бы использовал временные файлы, например, так:

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" 

, которое вы можете проанализировать, есливам нужно было автоматизировать этот процесс для большого количества файлов.

7 голосов
/ 12 августа 2011

Вот быстрый способ сделать это.

# 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 голосов
/ 12 августа 2011

Пожалуйста, содержание help(download.file) для этого. Если рассматриваемый файл является просто распакованным, но в остальном читаемым файлом, вы можете передать полный URL-адрес также read.table() и др.

...