從TXT | CSV文件讀取數(shù)據(jù):R基本函數(shù)
在前面荚斯,我們描述了R編程的要點(diǎn)和準(zhǔn)備數(shù)據(jù)的一些最佳實(shí)踐哭靖。
在本文中,您將學(xué)習(xí)如何將.txt(制表符分隔值)和.csv(逗號分隔值)文件格式的數(shù)據(jù)導(dǎo)入R寒波。
預(yù)備任務(wù)
啟動RStudio:運(yùn)行RStudio并設(shè)置工作目錄
準(zhǔn)備數(shù)據(jù):準(zhǔn)備數(shù)據(jù)的最佳實(shí)踐
用于導(dǎo)入數(shù)據(jù)的R基本函數(shù)
R base函數(shù)read.table()是一個通用函數(shù)吹害,可用于讀取表格式的文件均函。數(shù)據(jù)將作為數(shù)據(jù)框?qū)搿?/p>
請注意亿虽,根據(jù)文件格式的不同,read.table()的幾種變體可以使您的生活更輕松苞也,包括read.csv()洛勉、read.csv2()、read.delim()和read.delim2()如迟。
read.csv():用于讀取“逗號分隔符”文件(“.csv”)收毫。
read.csv2():用于使用逗號“,”作為小數(shù)點(diǎn)和分號“氓涣;”作為字段分隔符的文件牛哺。
read.delim():用于讀取“制表符分隔符”文件(“.txt”)。默認(rèn)情況下劳吠,點(diǎn)(“.”)用作小數(shù)點(diǎn)引润。
read.delim2():用于讀取“制表符分隔值”文件(“.txt”)。默認(rèn)情況下痒玩,逗號(“淳附,”)用作小數(shù)點(diǎn)。
這些函數(shù)的簡化格式如下:
#將表格數(shù)據(jù)讀入R
read.table(file, header = FALSE, sep = "", dec = ".")
#讀取“逗號分隔值”文件(“.csv”)
read.csv(file, header = FALSE, sep = ",", dec = ".",...)
#或者使用read.csv2,使用逗號作為小數(shù)點(diǎn)蠢古,使用分號作為字段分隔符奴曙。
read.csv2(file,header=TRUE草讶,sep=“洽糟;”,dec=“堕战,”坤溃,…)
#讀取制表符分隔的文件
read.delim(file,header=TRUE嘱丢,sep=“\t”薪介,dec=“.”,…)
read.delim2(file越驻,header=TRUE汁政,sep=“\t”道偷,dec=“,”记劈,…)
文件:包含要導(dǎo)入R的數(shù)據(jù)的文件的路徑勺鸦。
sep:字段分隔符字符∧磕荆“\t”用于制表符分隔的文件祝旷。
header:邏輯值。如果為TRUE嘶窄,read.table()假定文件有一個標(biāo)題行,因此第1行是每列的名稱距贷。如果不是這樣柄冲,可以添加參數(shù)header=FALSE。
dec:文件中用于小數(shù)點(diǎn)的字符忠蝗。
讀取本地文件
要導(dǎo)入本地.txt或.csv文件现横,語法如下:
#讀取一個名為“mtcars.txt”的txt文件
my_data<-read.delim(“mtcars.txt”)
#讀取一個名為“mtcars.csv”的csv文件
my_data<-read.csv(“mtcars.csv”)
上面的R代碼假設(shè)文件“mtcars.txt”或“mtcars.csv”在當(dāng)前工作目錄中。要知道當(dāng)前的工作目錄阁最,請在R控制臺中鍵入getwd()函數(shù)戒祠。
也可以使用函數(shù)file.choose()以交互方式選擇文件,如果您是R編程的初學(xué)者速种,我建議您這樣做:
#讀取txt文件
my_data<-read.delim(file.choose())
#讀取csv文件
my_data<-read.csv(file.choose())
如果在RStudio中使用上面的R代碼姜盈,系統(tǒng)會要求您選擇一個文件。
如果您的數(shù)據(jù)包含帶文本的列配阵,R可以假設(shè)列是一個因子或分組變量(例如:“good”馏颂、“good”、“bad”棋傍、“bad”救拉、“bad”)。如果不想將文本數(shù)據(jù)轉(zhuǎn)換為因子瘫拣,請在read.delim()亿絮、read.csv()和read.table()函數(shù)中添加stringsAsFactor=FALSE。在這種情況下麸拄,與文本文件中的字符串對應(yīng)的數(shù)據(jù)框列將是字符派昧。
例如:
my_data<-read.delim(file.choose(),
stringsAsFactor=FALSE)
如果字段分隔符是例如“|”感帅,則可以將常規(guī)函數(shù)read.table()與其他參數(shù)一起使用:
my_data<-read.table(file.choose()斗锭,
sep=“|”,header=TRUE失球,dec=“.”)
從internet讀取文件
可以使用函數(shù)read.delim()岖是、read.csv()和read.table()從web導(dǎo)入文件帮毁。
my_data<-read.delim(“http://www.sthda.com/upload/boxplot_format.txt”)
總結(jié)
導(dǎo)入本地.txt文件:read.delim(file.choose())
導(dǎo)入本地.csv文件:read.csv(file.choose())
從internet導(dǎo)入文件:如果是txt文件,則為read.delim(url)豺撑;如果是csv文件烈疚,則為read.csv(url)