R語言-如何讀寫帶分隔符的文件
有眾多的格式和文本文件標(biāo)準(zhǔn)可用于存儲(chǔ)數(shù)據(jù)。用于存儲(chǔ)數(shù)據(jù)的通用格式為分隔符值(即CSV或制表符分割文件)、可擴(kuò)展標(biāo)記語言(XML)、JavaScript對(duì)象表示法(JSON)
將數(shù)據(jù)存儲(chǔ)在文本文件中的主要優(yōu)點(diǎn)是:他們可被幾乎所有的其他數(shù)據(jù)分析軟件或人讀取
R語言提供豐富的函數(shù)來讀取不同格式的數(shù)據(jù),包括:
文本文件(TXT文件)
逗號(hào)分隔文件(CSV文件)
TXT文件——read.table()
矩形(類似電子表格的)數(shù)據(jù)通常存儲(chǔ)在帶有分隔符的文件中,特別是逗號(hào)分隔值(CSV)和制表符分隔值文件。read.table將讀取這些分隔符文件,并將結(jié)果存儲(chǔ)在一個(gè)數(shù)據(jù)框中。其格式如下:
read.table(file,header = FALSE,sep = “”,quote = “”'", dec = “.”,numerals = c(“allow.loss”,“warn.loss”,“no.loss”), row.name,col.name,as.is = !stringsAsFactors, na.strings = “NA”,colClasses = NA,nrow = -1, skip = 0,check.names = TRUE,fill = !blank.lines.skip, strip.white = FALSE,bla nk.lines.skip = TRUE, comment.char = “#”, allowEscapes = FALSE,flush = FALSE, stringsAsFactors = default.stringsAsFactors(), fileEncoding = “”,encoding = “unknown”,text,skipNul = FALSE)
read.table 函數(shù)的常用參數(shù)描述
| 參數(shù) | 描述 |
|---|---|
| file | 文件名(包含在“”內(nèi),或使用一個(gè)字符型變量),可能需要全路徑(即使是在Windows下,符號(hào) \ 也不允許包含在內(nèi),必須用 / 或者 \ \ 替換)或者一個(gè)URL(Uniform Resource Location,統(tǒng)一資源定位符)鏈接(用URL對(duì)文件遠(yuǎn)程訪問) |
| header | 一個(gè)邏輯值,用來反映這個(gè)文件的第1行是否包含變量名,為TRUE時(shí)表示文件的第1行為變量名 |
| sep | 文件中的字段分隔符,例如,對(duì)用制表符分隔的文件使用sep=“\t” |
| quote | 指定用于包圍字符型數(shù)據(jù)的字符 |
| dec | 用來標(biāo)識(shí)小數(shù)點(diǎn)的字符 |
| fill | 如果為TRUE且所有行中的變量數(shù)目并不相同,則用空白填補(bǔ) |
| row.names | 保存著行名的向量,或文件中一個(gè)變量的序號(hào)或名字,默認(rèn)時(shí)行號(hào)取為1、2、3··· |
| col.names | 指定列名的字符型向量,默認(rèn)值為V1、V2、V3··· |
| encoding | 若文件中包含非ASCII字符字段,則使用此參數(shù)進(jìn)行設(shè)置,可確保以正確的編碼方式讀取,避免出現(xiàn)亂碼 |
更多高級(jí)選項(xiàng)包括:覆蓋默認(rèn)的行名、列名和類,指定輸入文件的字符編碼,以及輸入的字符串格式的列如何聲明

CSV文件——read.csv()
read.csv函數(shù)可讀入一個(gè)逗號(hào)分隔文件并將其保存為一個(gè)數(shù)據(jù)框,其格式如下:
read.csv(file,header = TRUE,sep = “,”,quote = “” “,dec=” . ",fill = TRUE,comment.char = " ",ecoding = "unknown ",…)
| 參數(shù) | 描述 |
|---|---|
| file | 文件名(包含在“”內(nèi),或使用一個(gè)字符型變量),可能需要全路徑(即使是在Windows下,符號(hào) \ 也不允許包含在內(nèi),必須用 / 或者 \ \ 替換)或者一個(gè)URL鏈接(用URL對(duì)文件遠(yuǎn)程訪問) |
| header | 一個(gè)邏輯值,用來反映這個(gè)文件的第1行是否包含變量名,為TRUE時(shí)表示文件的第1行為變量名 |
| sep | 文件中的字段分隔符,CSV文件默認(rèn)為sep="," |
| quote | 指定用于包圍字符型數(shù)據(jù)的字符 |
| dec | 用來標(biāo)識(shí)小數(shù)點(diǎn)的字符 |
| fill | 如果為TRUE且所有行中的變量數(shù)目并不相同,則用空白填補(bǔ) |
| comment.char | 包含單個(gè)字符或空字符串的長度為1的字符向量,以這個(gè)字符開頭的行將被忽略(要禁用這個(gè)參數(shù),可使用comment.char="" |
| encoding | 若文件中包含非ASCII字符字段,則使用此參數(shù)進(jìn)行設(shè)置,可確保以正確的編碼方式讀取,避免出現(xiàn)亂碼 |

與此相反的任務(wù)是寫入文件,write.table和write.csv分別對(duì)應(yīng)著read.table和read.csv的讀操作
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。
相關(guān)文章
R語言數(shù)據(jù)可視化繪圖Lollipop?chart棒棒糖圖
這篇文章主要介紹了R語言數(shù)據(jù)可視化繪圖Lollipop?chart棒棒糖圖2022-02-02
R語言實(shí)現(xiàn)各種數(shù)據(jù)可視化的超詳細(xì)教程
Python語言越來越流行,尤其是在機(jī)器學(xué)習(xí)與深度學(xué)習(xí)等領(lǐng)域,但是R語言在數(shù)據(jù)分析與可視化方面仍然具有絕對(duì)的優(yōu)勢(shì),下面這篇文章主要給大家介紹了關(guān)于R語言實(shí)現(xiàn)各種數(shù)據(jù)可視化的超詳細(xì)教程,需要的朋友可以參考下2022-11-11
R語言如何將大型Excel文件轉(zhuǎn)為dta格式詳解
這篇文章主要給大家介紹了關(guān)于R語言如何將大型Excel文件轉(zhuǎn)為dta格式的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03
R語言繪圖時(shí)輸出希臘字符上下標(biāo)及數(shù)學(xué)公式實(shí)現(xiàn)方法
這篇文章主要為大家介紹了R語言進(jìn)行繪圖時(shí)輸出希臘字符上標(biāo),下標(biāo)及數(shù)學(xué)公式的實(shí)現(xiàn)方法,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2021-11-11
R語言 install.packages 無法讀取索引的解決方案
這篇文章主要介紹了R語言 install.packages 無法讀取索引的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2021-04-04
R語言學(xué)習(xí)筆記缺失數(shù)據(jù)的Bootstrap與Jackknife方法
這篇文章主要為大家介紹了R語言學(xué)習(xí)筆記關(guān)于缺失數(shù)據(jù)的Bootstrap與Jackknife的方法,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步2021-11-11
利用R語言合并數(shù)據(jù)框的行與列實(shí)例代碼
實(shí)際操作中我們經(jīng)常需要引入其他表中的列,即將其他表中列加入到表中,需要把兩個(gè)或者更多的表合并成一個(gè),下面這篇文章主要給大家介紹了關(guān)于利用R語言合并數(shù)據(jù)框的行與列的相關(guān)資料,需要的朋友可以參考下2022-07-07

