久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

不同格式的數(shù)據(jù)的R讀入與輸出

 萌小芊 2018-03-04


csv,、txt格式基本上是大多數(shù)語(yǔ)言支持的數(shù)據(jù)輸入方式,甚至數(shù)據(jù)庫(kù)入庫(kù)出庫(kù)也是這兩種常見(jiàn)的格式,,所以這才是通用的東西,。csv就是Comma-Separated Values,就是以逗號(hào)分隔的數(shù)據(jù)表,,所謂逗號(hào)分隔就是列和列之間以英文的逗號(hào)分隔,。另外所有的excel文件都可以通過(guò)另存為的方式都可以保存為csv,,然后通過(guò)csv讀入R語(yǔ)言。

讀取csv文件
hospital <- read.csv('e:/業(yè)余/zimeiti/窺視數(shù)據(jù)背后的邏輯:基于r與python/bookwriting/第一章這樣入門(mén)比《r導(dǎo)論》還簡(jiǎn)單/data/hospital.csv',=""  =""  =""  =""  =""  =""  =""  =""  =""  header="T," sep=',' ,="" stringsasfactors="">

R里面可以通過(guò)read.csv函數(shù)讀取csv文件,,第一個(gè)參數(shù)指定文件的完整路徑,,這里我們讀取了全國(guó)兩萬(wàn)多家醫(yī)院的規(guī)模數(shù)據(jù),header參數(shù)用于指定第一行是否是列名稱(chēng),,為真表示第一行是列名稱(chēng),,否則R會(huì)將第一行當(dāng)作數(shù)據(jù)然后默認(rèn)給數(shù)據(jù)的列命名,sep參數(shù)用于指定分隔符,,這里使用英文逗號(hào)分隔,,stringsAsFactors參數(shù)用于設(shè)定是否將字符型變量轉(zhuǎn)化為因子,這一點(diǎn)很重要,,如果數(shù)據(jù)量不是很大請(qǐng)?jiān)O(shè)置為F,,如果數(shù)據(jù)量很大且轉(zhuǎn)化為因子后因子水平比較少請(qǐng)?jiān)O(shè)置為T(mén),這樣可以節(jié)省數(shù)據(jù)占用的內(nèi)存,,原因前面講解因子時(shí)已經(jīng)講過(guò)了,;2行通過(guò)tail函數(shù)查看數(shù)據(jù)的最后6行;3行查看數(shù)據(jù)結(jié)構(gòu),,發(fā)現(xiàn)read.csv函數(shù)讀取數(shù)據(jù)后將數(shù)據(jù)轉(zhuǎn)化為了數(shù)據(jù)框,。

讀取txt文件
hospital <- read.table('e:/業(yè)余/zimeiti/窺視數(shù)據(jù)背后的邏輯:基于r與python/bookwriting/第一章這樣入門(mén)比《r導(dǎo)論》還簡(jiǎn)單/data/hospital.txt',=""  =""  =""  =""  =""  =""  =""  =""  =""  header="T," sep='\t' ,="" stringsasfactors="">

R里面可以通過(guò)read.table函數(shù)讀取txt或者無(wú)后綴文件,第一個(gè)參數(shù)指定文件的完整路徑,,header參數(shù)用于指定第一行是否是列名稱(chēng),,sep參數(shù)用于指定分隔符,這里使用制表符分隔,,請(qǐng)記住txt文件的分隔符多種多樣,,比如”;”,”#”和空格等等,,而且不同的環(huán)境還不一樣,,比如在hive導(dǎo)出的一般是無(wú)后綴的文件分隔符為“\001”等等,stringsAsFactors參數(shù)用于設(shè)定是否將字符型變量轉(zhuǎn)化為因子,;2行通過(guò)tail函數(shù)查看數(shù)據(jù)的最后6行,;3行查看數(shù)據(jù)結(jié)構(gòu),read.table函數(shù)讀取數(shù)據(jù)后將數(shù)據(jù)轉(zhuǎn)化為了數(shù)據(jù)框,。

輸出csv,、txt文件
write.csv(hospital, file = 'E:/業(yè)余/zimeiti/窺視數(shù)據(jù)背后的邏輯:基于R與python/bookwriting/第一章這樣入門(mén)比《R導(dǎo)論》還簡(jiǎn)單/plot/hospital.csv',row.names = F)write.table(hospital, file = 'E:/業(yè)余/zimeiti/窺視數(shù)據(jù)背后的邏輯:基于R與python/bookwriting/第一章這樣入門(mén)比《R導(dǎo)論》還簡(jiǎn)單/plot/hospital.txt',row.names = F)

write.csv用于輸出csv格式的文件,就是將文件寫(xiě)入到硬盤(pán),,第一個(gè)參數(shù)用于指定輸出的對(duì)象,,對(duì)象一般是數(shù)據(jù)框格式,,file參數(shù)用于指定輸出的完成路徑,,row.names參數(shù)用來(lái)指定是不是輸出行名稱(chēng),,默認(rèn)是輸出行編號(hào)的,所以一般需要特別之處不要輸出行編號(hào),,否則行編號(hào)就會(huì)變成一列新的數(shù)據(jù),;2行使用write.table函數(shù)輸出txt格式的文件,參數(shù)和write.csv,。

輸入輸出RData
getwd()setwd('D:/BF/Documents')a <- 1:3b=""><- c('a',="" 'b','b')alist=""><- list(a,="" b)save(hospital,="" alist,="" file='temp.RData' )rm(list="">

RData是R語(yǔ)言特有的一種數(shù)據(jù)存儲(chǔ)格式,,它能存儲(chǔ)所有R語(yǔ)言環(huán)境中的對(duì)象,也就是說(shuō)它不限制對(duì)象類(lèi)型,。這里我們要順便介紹幾個(gè)函數(shù),,getwd函數(shù)用于獲得當(dāng)前工作目錄,如果輸入輸出文件沒(méi)有指定具體的路徑的話(huà),,R就會(huì)在當(dāng)前工作目錄下搜索文件讀取或輸出,,windows系統(tǒng)默認(rèn)為文檔目錄;setwd函數(shù)用于設(shè)定新的工作目錄,;3-5行創(chuàng)建了一個(gè)alist對(duì)象,;6行將數(shù)據(jù)框hospital、表單alist一起保存在temp的RData中,,這里我們沒(méi)有指定完整的路徑,,所以默認(rèn)會(huì)保存到當(dāng)前工作目錄;7行移除內(nèi)存中所有的對(duì)象,,可以看到Rstudio中的environment中已經(jīng)沒(méi)有了對(duì)象,;8行重新將名為temp的RData加載到內(nèi)存,沒(méi)有指定完整路徑R就會(huì)去當(dāng)前目錄下查找,;9行ls函數(shù)用于查看內(nèi)存中的R對(duì)象,,可以看到僅僅有剛剛加載的hostpital和alist;其實(shí)RData主要是用于保存格式比較特殊的R對(duì)象,,比如構(gòu)建完成的各類(lèi)模型等等,。

而在一些市場(chǎng)研究公司case by case的項(xiàng)目比較多,數(shù)據(jù)一般是以excel讀取的格式xlsx存儲(chǔ)的,,很少有以數(shù)據(jù)庫(kù)或csv或txt格式存儲(chǔ),,這種情況下一種方式是將xlsx格式的文件存儲(chǔ)為csv或txt讀取,另外一種方式是直接讀xlsx文件,。

輸入xlsx文件
library(xlsx)temp <- read.xlsx('e:/業(yè)余/zimeiti/窺視數(shù)據(jù)背后的邏輯:基于r與python/bookwriting/第一章這樣入門(mén)比《r導(dǎo)論》還簡(jiǎn)單/data/hospital.xlsx',sheetindex="1,"  =""  =""  =""  =""  =""  =""  =""  =""  as.data.frame="T," header="T," encoding='UTF-8' )="">

xlsx包用于處理xlsx文件,,你可以通過(guò)上面已經(jīng)講過(guò)的安裝方式安裝這個(gè)包,其中read.xlsx函數(shù)讀取xlsx文件,,第一個(gè)參數(shù)用于指定文件的路徑,,sheetIndex參數(shù)用于指定讀取第幾個(gè)sheet,也可以通過(guò)sheetName參數(shù)設(shè)定讀取的sheet名稱(chēng),as.data.frame用于指定是否將數(shù)據(jù)轉(zhuǎn)化為數(shù)據(jù)框,,header參數(shù)和上面函數(shù)中的意義一樣,,即是否將第一行設(shè)為列名稱(chēng),encoding用于指定文件的編碼,,我們將在本章的最后一節(jié)亂碼中詳解,,這個(gè)函數(shù)有個(gè)缺點(diǎn),速度非常慢,,慢到無(wú)法忍受,,2萬(wàn)條數(shù)據(jù)要好多分鐘。

以上我們講解了各種文件的輸入和輸出,,這樣第一章的R基礎(chǔ)部分基本上可以過(guò)關(guān)了,,也就是說(shuō)你對(duì)R語(yǔ)言的基礎(chǔ)內(nèi)容已經(jīng)掌握的比較全面了。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,,所有內(nèi)容均由用戶(hù)發(fā)布,,不代表本站觀(guān)點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購(gòu)買(mǎi)等信息,,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請(qǐng)點(diǎn)擊一鍵舉報(bào),。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶(hù) 評(píng)論公約

    類(lèi)似文章 更多