如何在R語言中對(duì)文本文件進(jìn)行讀寫-創(chuàng)新互聯(lián)

如何在R語言中對(duì)文本文件進(jìn)行讀寫?相信很多沒有經(jīng)驗(yàn)的人對(duì)此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個(gè)問題。

網(wǎng)站建設(shè)公司,為您提供網(wǎng)站建設(shè),網(wǎng)站制作,網(wǎng)頁設(shè)計(jì)及定制網(wǎng)站建設(shè)服務(wù),專注于成都定制網(wǎng)頁設(shè)計(jì),高端網(wǎng)頁制作,對(duì)陽臺(tái)護(hù)欄等多個(gè)行業(yè)擁有豐富的網(wǎng)站建設(shè)經(jīng)驗(yàn)的網(wǎng)站建設(shè)公司。專業(yè)網(wǎng)站設(shè)計(jì),網(wǎng)站優(yōu)化推廣哪家好,專業(yè)營銷推廣優(yōu)化,H5建站,響應(yīng)式網(wǎng)站。

具體如下:

read.table(file,sep,hesder)
#file 文件路徑
#sep 分隔符
#header 第一行是不是列名(如果第一行是列名導(dǎo)入的時(shí)候填TRUE;默認(rèn)值是FALSE,即把第一行算作數(shù)據(jù))

準(zhǔn)備工作

為方便后面使用的相對(duì)路徑,我們先使用setwd(路徑)設(shè)置路徑,設(shè)置好之后可以用getwd() 獲取當(dāng)前路徑進(jìn)行檢查。

> setwd("F:/r-test-data")
> getwd()
[1] "F:/r-test-data"

注意數(shù)據(jù)分隔符:
因?yàn)閿?shù)據(jù)有時(shí)候是從數(shù)據(jù)庫導(dǎo)出或者.xlsx里截取等等,所以有時(shí)候看起來是空白分隔卻有著不一樣的格式。
常見空白分隔符有:空格,制表符,換行符
sep=” ”;sep = “\t”;sep = “\n”

讀取txt文件

將工作路徑調(diào)制要導(dǎo)入文件所在的文件夾下,之后輸入.txt的文件名和分隔符就可以導(dǎo)入數(shù)據(jù)了。

> data1 <- read.table('test.txt',sep = '\t',header = TRUE)
> data1
  CountryCode  Language IsOfficial Percentage
1     ABW    Dutch    TRUE    5.3
2     AFG    Dari    TRUE    32.1
3     AFG   Pashto    TRUE    52.4
4     AIA   English    TRUE    0.0
5     ALB  Albaniana    TRUE    97.9
6     AND   Catalan    TRUE    32.3
7     ANT    Dutch    TRUE    0.0
8     ANT Papiamento    TRUE    86.2
9     ARE   Arabic    TRUE    42.0
10     ARG   Spanish    TRUE    96.8
11     ARM  Armenian    TRUE    93.4
12     ASM   English    TRUE    3.1
13     ASM   Samoan    TRUE    90.6
14     ATG   English    TRUE    0.0
15     AUS   English    TRUE    81.2
16     AUT   German    TRUE    92.0
17     AZE Azerbaijani    TRUE    89.0

讀取CSV文件

CSV (逗號(hào)分隔值文件格式)
CSV”并不是一種單一的、定義明確的格式(盡管RFC 4180有一個(gè)被通常使用的定義)。因此在實(shí)踐中,術(shù)語“CSV”泛指具有

以下特征的任何文件:
1. 純文本,使用某個(gè)字符集,比如ASCII、Unicode、EBCDIC或GB2312;
2. 由記錄組成(典型的是每行一條記錄);
3. 每條記錄被分隔符分隔為字段(典型分隔符有逗號(hào)、分號(hào)或制表符;有時(shí)分隔符可以包括可選的空格);
4. 每條記錄都有同樣的字段序列。
在數(shù)據(jù)

在R語言使用過程中最為常用的數(shù)據(jù)格式,有專門的讀取函數(shù)read.csv(file,header)(read.csv也可用于讀取逗號(hào)分隔的.txt文件)。
讀取Excel文件通常,先轉(zhuǎn)為CSV格式,然后再使用。

這里的countrylanguage.csv文件,是我直接從MySQL數(shù)據(jù)庫中導(dǎo)出.csv格式的數(shù)據(jù)集合。

> data2 <- read.csv('countrylanguage.csv',TRUE)
> head(data2)
> #通過head()函數(shù)可以讀取前6行數(shù)據(jù)
 CountryCode Percentage Percentage.1 Percentage.2
1     ABW   Dutch     TRUE     5.3
2     ABW  English    FALSE     9.5
3     ABW Papiamento    FALSE     76.7
4     ABW  Spanish    FALSE     7.4
5     AFG  Balochi    FALSE     0.9
6     AFG    Dari     TRUE     32.1

讀取Excel文件

一種需要配置java環(huán)境的讀文件,如果大家電腦中沒有裝好的java環(huán)境,還是建議大家還是把.xlsx另存為.csv;如果本來就是JAVA語言使用者那就可以直接體驗(yàn),不必繁瑣的配環(huán)境了。

讀取Excel需要使用到xlsx包,xlsx依賴于rjava包,rjava雖然是R語言包 但是使用環(huán)境需要JAVA語言編譯環(huán)境JRE(JDK是JAVA的運(yùn)行環(huán)境包括了JRE)。
安裝流程:安裝JDK->加載rJava->加載xlsx包

注意:R語言是一個(gè)大小寫敏感的語言,大家下載和加載包時(shí)要注意包名里字母的大小寫例如:install.packages('rjava') 會(huì)提示包名應(yīng)該為rJava。

配置好jdk環(huán)境,加載好rJava和xlsx包就可以開始讀取Excel文件了。

> data4 <- read.xlsx('countrylanguage.xlsx',sheetIndex = 1)
> #讀取文件
> data4
  CountryCode        Percentage Percentage.1 Percentage.2
1      ABW           Dutch      T     5.3
2      AFG           Dari      T     32.1
3      AFG          Pashto      T     52.4
4      AIA          English      T     0.0
5      ALB         Albaniana      T     97.9
6      AND          Catalan      T     32.3
7      ANT           Dutch      T     0.0
8      ANT        Papiamento      T     86.2
9      ARE          Arabic      T     42.0
10     ARG          Spanish      T     96.8

寫入文件

可以保存成任意符號(hào)分隔的文件write.table(data,file,sep)
保存成文件的類型要自己以擴(kuò)展名的方式寫在‘file'字段里,比如test.csv,test.doc,test.xlsx

寫CSV文件

write.csv(data,file)
#為了檢驗(yàn)方便,這里我們把countrylanguage前六行數(shù)另存為.csv文件;當(dāng)然文件的擴(kuò)展名是可以自己指定的,當(dāng)然文件里數(shù)據(jù)都是逗號(hào)分割的。
> data3 <- head(data2)
> write.csv(data3,'save.csv')
> write.csv(data3,'save.doc')

如何在R語言中對(duì)文本文件進(jìn)行讀寫

如何在R語言中對(duì)文本文件進(jìn)行讀寫


可以設(shè)置不要行名將前面沒有意義的1,2…去掉write.csv(data3,'save.csv',row.names = FALSE) 得到結(jié)果

"CountryCode","Percentage","Percentage.1","Percentage.2"
"ABW","Dutch",TRUE,5.3
"ABW","English",FALSE,9.5
"ABW","Papiamento",FALSE,76.7
"ABW","Spanish",FALSE,7.4
"AFG","Balochi",FALSE,0.9
"AFG","Dari",TRUE,32.1

寫xlsx文件

將要保存的數(shù)據(jù)存成.xlsx文件

> write.xlsx(head(data3),'test.xlsx',row.names = FALSE)
> #和之前寫文件一樣,write.‘type'(),type只是數(shù)據(jù)保存時(shí)格式的描述,不是默認(rèn)保存文件的擴(kuò)展名
> #擴(kuò)展名需要自己在文件名中寫清楚,文件存儲(chǔ)格式打開方式是和文件擴(kuò)展名有關(guān)的。

如何在R語言中對(duì)文本文件進(jìn)行讀寫

看完上述內(nèi)容,你們掌握如何在R語言中對(duì)文本文件進(jìn)行讀寫的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!

文章標(biāo)題:如何在R語言中對(duì)文本文件進(jìn)行讀寫-創(chuàng)新互聯(lián)
URL標(biāo)題:http://muchs.cn/article36/ejgpg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供關(guān)鍵詞優(yōu)化用戶體驗(yàn)、網(wǎng)站制作、小程序開發(fā)、網(wǎng)站策劃、網(wǎng)站設(shè)計(jì)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)