使用R解压缩gz文件

时间:2011-04-23 13:45:00

标签: r gzip

我过去曾使用?unzip来获取使用R的压缩文件的内容。这次,我很难从.gz文件中提取文件{{3 }}

我尝试了?gzfile?gzcon,但未能将其付诸实施。我们将非常感谢您提供的任何帮助。

5 个答案:

答案 0 :(得分:57)

以下是一个有用的示例,可以帮助说明gzfile()gzcon()的用途

foo <- data.frame(a=LETTERS[1:3], b=rnorm(3))
foo
#  a        b
#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

既然已经编写了文件,而不是隐式使用file(),请使用gzfile()

read.table(gzfile("/tmp/foo.csv.gz"))   
#  a        b
#1 A 0.586882
#2 B 0.218608
#3 C 1.290776

您指向的文件是压缩的tar存档,据我所知,R本身没有tar档案的接口。这些通常用于分发源代码 - 例如R包和R源。

答案 1 :(得分:31)

要在R中解压缩文件,您可以执行

library(R.utils)
gunzip("file.gz")

答案 2 :(得分:26)

如果您确实要解压缩文件,只需使用支持 gzip untar功能。 E.g:

untar('chadwick-0.5.3.tar.gz')

答案 3 :(得分:19)

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'是原始文本文件一样工作。

答案 4 :(得分:1)

tsv.gz

it('enter the manifest page', () => { // cases.checkManifest(); browser.wait(browser.get(browser.baseUrl + 'report/manifest')); let dateStartPicker = element.all(by.css('[text]')).filter(pickers => { return pickers.getAttribute('text').then(txt => { return txt.includes('Start Date'); }) }).first(); dateStartPicker.getAttribute('text').then(txt => { console.log(txt) }) let dateInput = dateStartPicker.element(by.className('k-input')) dateInput.getAttribute('aria-valuetext').then(txt => { console.log(txt) }); })配合使用