R語言基礎(chǔ)-數(shù)據(jù)的存儲與讀取

責(zé)任編輯:ycao

2018-04-20 14:25:43

摘自:學(xué)術(shù)咖

如果一個文件不在工作目錄里則必須給出它的路徑。用setwd()設(shè)置工作路徑,用getwd()查看目前的工作路徑。工作目錄的設(shè)定也可以通過“文件”菜單的“改變當(dāng)前目錄。。?!眮硗瓿伞?/p>

今天我們來聊一下如何在R語言中讀入數(shù)據(jù)和導(dǎo)出存儲數(shù)據(jù)?對于在文件中進(jìn)行的讀取和寫入工作,R使用工作目錄來完成。

如果一個文件不在工作目錄里則必須給出它的路徑。用setwd()設(shè)置工作路徑,用getwd()查看目前的工作路徑。工作目錄的設(shè)定也可以通過“文件”菜單的“改變當(dāng)前目錄。。。”來完成。

設(shè)置好工作路徑后,接下來要做的就是讀取數(shù)據(jù),那么不同類型的數(shù)據(jù),讀取方法也是不同的。

1、讀取表格格式數(shù)據(jù)的函數(shù)常用read.table()和read.csv()。他們是R里讀取數(shù)據(jù)最常用的函數(shù),用來讀取以行和列形式存儲的文本數(shù)據(jù),并且在R中返回數(shù)據(jù)框。

2、readLines()函數(shù)可以逐行讀取文本文件,并且在R中返回字符向量。

3、source()是讀取R代碼的重要函數(shù),如果你有保存成文本文件的R代碼,例如函數(shù),你就可以用source()函數(shù)來把代碼讀進(jìn)R里。

4、dget()函數(shù)也可以讀取R代碼文件。

5、load()和unseralize()函數(shù)能把二進(jìn)制文件讀取到R中。

6、R還可以讀取網(wǎng)絡(luò)數(shù)據(jù),其他統(tǒng)計軟件的數(shù)據(jù),因為他們僅對R高級應(yīng)用有用,這里不細(xì)說。

相應(yīng)的存儲函數(shù)有:

1、write.table()  2、writeLines()  3、dump()  4、dput()  5、save()  6、seralize()

那么這么多函數(shù),作為基礎(chǔ),我們重點只要先弄清楚最常見的數(shù)據(jù)類型怎么讀入R中。

一、讀取txt數(shù)據(jù),使用read.table,它們的分隔符是一樣的。

常見格式:


  1. read.table(file, header = FALSE, sep = "", quote = ""'",dec = ".", skip = 0, 
  2. strip.white = FALSE, blank.lines.skip = TRUE,comment.char = "#"

包含的這些參數(shù)分別代表什么意思?

舉例:

二、讀取csv數(shù)據(jù),可以使用read.table()也可以使用read.csv()函數(shù)。

還可以使用read.csv(),它默認(rèn)是第一行是標(biāo)題欄。所以不用再寫

header=T。而且read.csv()分隔符是逗號,和csv是一樣的。

三、如何讀取excel文件?

CSV讀入的速度較快,筆者這邊整理的是一種EXCEL VBA把xlsx先轉(zhuǎn)換為csv,然后利用read.csv導(dǎo)入的辦法。因為excel的讀入非常麻煩,依賴其他包。比如RODBC擴(kuò)展包,xlsx包,XLConnect包。

四、如何讀取網(wǎng)絡(luò)數(shù)據(jù)?

url建立一個指向網(wǎng)站的連接。例如:

 

鏈接已復(fù)制,快去分享吧

企業(yè)網(wǎng)版權(quán)所有?2010-2024 京ICP備09108050號-6京公網(wǎng)安備 11010502049343號