2013-04-17 3 views
-1

Я использую R.2.15.2 в Windows 7, и я не могу разархивировать файл .gz, хранящийся в сети. Я также использую gnuwin32 (если это поможет)Извлечение файлов gzip по сети

Файл виден, поэтому место в порядке

system("ls") 
file1.bla.gz 
file2.bla.gz 
file3.bla.gz 
... 

R) unzip("./file1.bla.gz") 
Message d'avis : 
In unzip("./file1.bla.gz") : 
erreur 1 lors de l'extraction d'un fichier zip 

R) untar("./file1.bla.gz") 
/usr/bin/tar: This does not look like a tar archive 
/usr/bin/tar: Skipping to next header 

Использование функции unzip это и не работают, похоже, это только дело с .zip файлов , Не уверен, что проблема в сети или если я ее неправильно назову ...

Как извлечь этот файл?

EDIT: Следующий работал

system(" \"C:\\Program Files\\7-Zip\\7z.exe\" e -y file1.bla.gz") 

И gunzip от R.utils даже лучше благодаря @Paul Hiemstra

+0

Определить «не работает». Что такое параметры чтения/записи этого конкретного файла/папки? –

+0

Вы пытались использовать 'gzfile'? – James

+0

@ RomanLuštrik: не работает == Я не могу найти способ распаковать файл внутри R James: Я просто попытался, gzfile («имя файла gz») без успеха – statquant

ответ

2

Вы можете использовать gzfile для доступа к содержимому в gzip сжатого файла, например :

read.table(gzfile("/tmp/foo.csv.gz")) 

, где foo.csv.gz - сжатый CSV-файл. Я получил эту форму @ DirkEddelbuettel ответ в this post.

Если вы хотите извлечь файл, вы можете использовать функцию gunzip из пакета R.utils. См. this R-help post.

+0

Ну, я думал, это сработало, но нет, так что это для '.tar' архивов не' .gz' – statquant

+0

'tar' также поддерживает извлечение архивов' gzip', поскольку они часто используются в тандеме. 'tar' для создания одного файла, который содержит все файлы, и' gzip' для добавления сжатия. –

+0

http://stackoverflow.com/questions/5764499/decompress-gz-file-using-r говорит, что он должен работать. –

Смежные вопросы