使用R解压缩gz文件
我过去使用了?unzip
来获取使用R的压缩文件的内容。这一次,我很难从一个.gz文件中提取文件,可以在这里find。
我已经尝试了?gzfile
和?gzcon
但一直没有得到它的工作。 任何帮助,您可以提供将不胜感激。
如果你真的想解压缩文件,只需使用支持gzip的untar
函数。 例如:
untar('chadwick-0.5.3.tar.gz')
这里有一个可以帮助说明gzfile()
和gzcon()
R> foo <- data.frame(a=LETTERS[1:3], b=rnorm(3)) R> foo ab 1 A 0.586882 2 B 0.218608 3 C 1.290776 R> write.table(foo, file="/tmp/foo.csv") R> system("gzip /tmp/foo.csv") # being very explicit
现在,该文件被写入,而不是隐式使用file()
,使用gzfile()
:
R> read.table(gzfile("/tmp/foo.csv.gz")) ab 1 A 0.586882 2 B 0.218608 3 C 1.290776 R>
你指出的文件是一个压缩的tar档案,据我所知,R本身没有接口tar档案。 这些通常用于分发源代码 – 例如R包和R源。
为了在R中解开文件,你可以这样做
library(R.utils) gunzip("file.gz")
http://blog.revolutionanalytics.com/2009/12/r-tip-save-time-and-space-by-compressing-data-files.html
R为最新版本(2.10)中的某些压缩文件添加了透明解压缩。 如果用bzip2,xvz或gzip压缩文件,则可以将它们读入R,就像它们是纯文本文件一样。 你应该有适当的文件扩展名。
命令…
myData <- read.table('myFile.gz')
#gzip压缩文件具有“gz”扩展名
将工作就像“myFile.gz”是原始文本文件。