R基礎(chǔ)-2讀取數(shù)據(jù)

1. 從帶分隔符的txt文件導(dǎo)入數(shù)據(jù)

原數(shù)據(jù)


圖片.png

參數(shù)說明:

  • file 是一個(gè)帶分隔符的ASCII文本文件。
  • header 其中header=TRUE表示第一行包含了變量名的邏輯變量;
  • header=FALSE則系統(tǒng)分配為V1,V2......等。
  • sep 表示文件中分開數(shù)據(jù)的分隔符,這表示一個(gè)或多個(gè)空格、制表符("\t")、換行或回車等。
  • skip讀取數(shù)據(jù)前跳過的行數(shù)目。
#更改工作目錄
setwd("C:/11/")
rt_0 <- read.table(file = "exam_data_1.txt",header = TRUE,sep = "|",skip = 1)
head(rt_0)

結(jié)果


圖片.png

參數(shù)說明:

  • row.names 用于指定行名的向量??梢允褂么藚?shù)以向量的形式給出每行的實(shí)際行名?;蛘咭x取的表中包含行名稱的列序號或列名字符串。
  • colClasses 給每個(gè)列設(shè)置需要的類型。如果設(shè)置為“NULL”表示跳過該列。讀取大型文件時(shí),設(shè)置此變量可以提升處理速度。
  • stringsAsFactors 標(biāo)記處字符向量是否需要轉(zhuǎn)化成因子。默認(rèn)值TRUE,除非它被colClasses 覆蓋。當(dāng)處理大型文本時(shí),可以設(shè)置stringsAsFactors =FALSE提升處理速度。
  • comment.char 默認(rèn)情況下,read.table 用 # 作為注釋標(biāo)識字符。如果碰到該字符(除了在被引用的字符串內(nèi)),該行中隨后的內(nèi)容將會被忽略。只含有空白和注釋的行被當(dāng)作空白行。如果確認(rèn)數(shù)據(jù)文件中沒有注釋內(nèi)容,用 comment.char = "" 會比較安全 (也可能讓速度比較快)。
  • nrows 讀取最大行數(shù)。
  • na.strings 可選的用于表示缺失值的字符向量。例子:na.strings = c("80")把值80在讀取時(shí)替換成NA。
  • 其他參數(shù)可以用help(read.table)查看
rt_1 <- read.table("exam_data_1.txt",header = TRUE,sep = "|",
                 row.names = "StudentID",skip = 1,
                 colClasses = c("character","character","NULL","numeric","numeric"),
                 stringsAsFactors = FALSE,na.strings = c("80"),nrows = 10)
rt_1

結(jié)果


圖片.png

2. 導(dǎo)入csv數(shù)據(jù)

原數(shù)據(jù)


圖片.png

參數(shù)說明:

  • file 文件名或者全程路徑(符號\使用/)或者一個(gè)變量或者一個(gè)URL鏈接遠(yuǎn)程訪問(http://...)
  • header 其中header=TRUE表示第一行包含了名;header=FALSE則系統(tǒng)分配為V1,V2......等。
  • sep 表示文件中分開數(shù)據(jù)的分隔符,這表示一個(gè)或多個(gè)空格、制表符("\t")、換行或回車等。
  • comment.char 默認(rèn)情況下,read.table 用 # 作為注釋標(biāo)識字符。如果碰到該字符開頭的行,該行會被忽略。如果數(shù)據(jù)文件沒有注釋內(nèi)容,用 comment.char = "" 可以提升讀取速度。
cv <- read.table("exam_data_1.csv",header = TRUE,sep = ",",
                 row.names = "StudentID",skip = 1,
                 colClasses = c("character","character","NULL","numeric","numeric"))
head(cv)
cv_0 <- read.table("exam_data_1.csv",header = TRUE,sep = ",",nrows = 10,
                   comment.char = "#")
cv_0
cv_1 <- read.csv("exam_data_1.csv",header = TRUE,sep = ",",
                    nrows = 10,comment.char = "#")
cv_1

結(jié)果


圖片.png
圖片.png

3. 導(dǎo)入Excel數(shù)據(jù)

原數(shù)據(jù)


圖片.png

參數(shù)說明:

  • file 文件名或者全程路徑(符號\使用/)或者一個(gè)變量等。
  • sheet 表示excel中指定sheet,可以是數(shù)值,表示第幾個(gè)sheet;也可以用sheet名字。
#####讀取xslx####
#install.packages("openxlsx")
library(openxlsx)
mydata <- read.xlsx("exam_data.xlsx",sheet =  "Sheet1")
mydata
mydata <- read.xlsx("exam_data.xlsx","Sheet1")
mydata

結(jié)果


圖片.png

4. 導(dǎo)入XML數(shù)據(jù)

XML包中解析XML函數(shù)為xmlTreeParse。xmlTreeParse可以解析XML或者HTML文件,返回一個(gè)樹結(jié)構(gòu)的對象。
原數(shù)據(jù)


圖片.png
#####讀取XML####
#install.packages("XML")
library(XML)
xmlTree <- xmlTreeParse(file= "xml_1.xml")
xmlTree

結(jié)果


圖片.png
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容