J’ai déjà utilisé ?unzip
dans le passé pour obtenir le contenu d’un fichier zippé en utilisant R. Cette fois-ci, j’ai du mal à extraire les fichiers d’un fichier .gz que vous pouvez trouver ici .
J’ai essayé ?gzfile
et ?gzcon
mais ?gzcon
n’ai pas réussi à le faire fonctionner. Toute aide que vous pouvez fournir sera grandement appréciée.
Si vous voulez vraiment décompresser le fichier, utilisez simplement la fonction untar
qui supporte gzip . Par exemple:
untar('chadwick-0.5.3.tar.gz')
Voici un exemple gzfile()
qui peut aider à illustrer à quoi gzfile()
et gzcon()
foo <- data.frame(a=LETTERS[1:3], b=rnorm(3)) foo # ab #1 A 0.586882 #2 B 0.218608 #3 C 1.290776 write.table(foo, file="/tmp/foo.csv") system("gzip /tmp/foo.csv") # being very explicit
Maintenant que le fichier est écrit, au lieu d'utiliser implicitement le file()
, utilisez gzfile()
:
read.table(gzfile("/tmp/foo.csv.gz")) # ab #1 A 0.586882 #2 B 0.218608 #3 C 1.290776
Le fichier que vous pointez est une archive tar compressée, et pour autant que je sache, R lui-même n'a pas d'interface avec les archives tar. Celles-ci sont couramment utilisées pour dissortingbuer le code source - comme par exemple pour les packages R et les sources R.
Pour supprimer un fichier dans R, vous pouvez le faire
library(R.utils) gunzip("file.gz")
http://blog.revolutionanalytics.com/2009/12/r-tip-save-time-and-space-by-compressing-data-files.html
R a ajouté une décompression transparente pour certains types de fichiers compressés dans la dernière version (2.10). Si vos fichiers sont compressés avec bzip2, xvz ou gzip, ils peuvent être lus dans R comme s’ils sont des fichiers texte. Vous devriez avoir les extensions de nom de fichier appropriées.
La commande…
myData <- read.table('myFile.gz')
Les fichiers compressés #gzip ont une extension "gz"
Travaillera comme si «myFile.gz» était le fichier texte brut.