利用R語(yǔ)言解壓與壓縮.tar.gz.zip等格式文件
最近嘗試用 R 對(duì)一些文件進(jìn)行批量的解壓與壓縮,這里記錄一些常用的解壓與壓縮的方法。
由于解壓與壓縮是對(duì)稱的兩種方法,這里我們著重以對(duì)文件的解壓為例,分不同的格式進(jìn)行講解。
.zip
壓縮:zip()
解壓:unzip()
若要壓縮文件,就直接在 zip()
函數(shù)的第一個(gè)參數(shù)里面輸入壓縮后的文件名,第二個(gè)參數(shù)輸入壓縮前的文件名。
而解壓文件就更簡(jiǎn)單了,直接利用 unzip()
里面加上需要解壓的文件名稱即可。
.tar.gz
壓縮:tar()
解壓:untar()
同 .zip
后綴的壓縮文件。
.gz 與 .bz2
這兩個(gè)壓縮文件與前面的相比,是最與眾不同的,因?yàn)檫@兩種后綴的文件,可以稱之為壓縮文件,也可以直接作為一個(gè)數(shù)據(jù)文件,當(dāng)成 data frame
直接進(jìn)行讀取。因?yàn)槠浔旧砭褪菙?shù)據(jù)文件。
下面我們以 解壓 / 讀取 進(jìn)行詳細(xì)說(shuō)明:
1) 直接解壓
R 中默認(rèn)沒(méi)有解壓相關(guān)文件的函數(shù),需要使用一個(gè)包:R.utils
,然后如下述代碼所示,利用 gunzip()
函數(shù),即可解壓。
library(R.utils) gunzip("file.gz", remove = `TRUE`) bunzip2("file.bz2", remove = `TRUE`)
注意是這個(gè)函數(shù)里面多了一個(gè) remove =
參數(shù),選擇 TRUE
就會(huì)只保留解壓后的文件,原壓縮包會(huì)被刪除,默認(rèn)就是 TRUE
。
解壓之后,我們可以直接用 read.table()
對(duì)其進(jìn)行讀取。
2) 直接讀取
當(dāng)然,如果我們的目的只是讀取其中的數(shù)據(jù),而不是一定需要解壓,則可以使用兩個(gè)默認(rèn)函數(shù)組合的形式,直接對(duì)數(shù)據(jù)進(jìn)行讀取:
dat <- read.table(gzfile("file.gz"))
而針對(duì) 2.10 版本之后的 R,還有另一種更方便的讀取方式,就是直接使用 read.table()
對(duì)其進(jìn)行讀取。
dat <- read.table("file.gz")
參考
untar: Extract Or List Tar Archives
以上就是利用R語(yǔ)言解壓與壓縮.tar.gz.zip等格式文件的詳細(xì)內(nèi)容,更多關(guān)于R語(yǔ)言解壓與壓縮文件的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Flex中對(duì)表格某列的值進(jìn)行數(shù)字格式化并求百分比添加%
需要對(duì)表格中某列的數(shù)值進(jìn)行格式化,對(duì)該數(shù)值乘以100,并保留兩位小數(shù),添加“%”下面同實(shí)例來(lái)實(shí)現(xiàn)下2014-10-10Flex 自定義DataGrid實(shí)現(xiàn)根據(jù)條目某一屬性值改變背景顏色
本節(jié)主要介紹了Flex DataGrid根據(jù)條目某一屬性值改變背景顏色,此DataGrid為自定義拓展的,需要的朋友可以參考下2014-07-07flex tomcat端口被占用的問(wèn)題分析及解決方法
在啟動(dòng)Tomcat,提示8080端口被占用了,該如何解決呢?本文整理了一些修改方法,感興趣的朋友可以參考下,希望可以幫助到你2013-02-02flex的tree動(dòng)態(tài)加載大量數(shù)據(jù)與滾動(dòng)條相關(guān)問(wèn)題探討
本文將對(duì)flex的tree動(dòng)態(tài)加載大量數(shù)據(jù)與滾動(dòng)條相關(guān)的問(wèn)題進(jìn)行探討,感興趣的朋友可以參考下哈,希望對(duì)你有所幫助2013-05-05Flex中的HDividedBox和VDividedBox的比較附圖
學(xué)習(xí)Flex的朋友對(duì)HDividedBox和VDividedBox并不陌生吧,下面是兩者的簡(jiǎn)單比較,感興趣的朋友可以參考下2013-10-10Flex上傳本地圖片并提前瀏覽的實(shí)現(xiàn)方法
個(gè)性頭像最終需要上傳到服務(wù)器的文件系統(tǒng)中,但是程序希望在用戶選擇后直接有個(gè)預(yù)覽,針對(duì)這個(gè)問(wèn)題,下面有個(gè)不粗的實(shí)現(xiàn),希望對(duì)大家有所幫助2014-01-01flex4 panel去掉標(biāo)題設(shè)置透明度效果代碼
首先:去掉Panel的標(biāo)題,其次:設(shè)置透明度這個(gè)說(shuō)了也是啰嗦,大家都會(huì),不過(guò)還是提一下吧,具體請(qǐng)祥看本文2013-05-05