从TXT | CSV文件读取数据:R基本函数
在前面,我们描述了R编程的要点和准备数据的一些最佳实践。
在本文中,您将学习如何将.txt(制表符分隔值)和.csv(逗号分隔值)文件格式的数据导入R。
预备任务
启动RStudio:运行RStudio并设置工作目录
准备数据:准备数据的最佳实践
用于导入数据的R基本函数
R base函数 read.table() 是一个通用函数,可用于读取表格式的文件。数据将作为数据框导入。
请注意,根据文件格式的不同,read.table()的几种变体可以使您的生活更轻松,包括read.csv()、read.csv2()、read.delim()和read.delim2()。
read.csv():用于读取“逗号分隔符”文件(“.csv”)。
read.csv2():用于使用逗号“,”作为小数点和分号“;”作为字段分隔符的文件。
read.delim():用于读取“制表符分隔符”文件(“.txt”)。默认情况下,点(“.”)用作小数点。
read.delim2():用于读取“制表符分隔值”文件(“.txt”)。默认情况下,逗号(“,”)用作小数点。
这些函数的简化格式如下:
#将表格数据读入R
read.table(file, header = FALSE, sep = "", dec = ".")
#读取“逗号分隔值”文件(“.csv”)
read.csv(file, header = FALSE, sep = ",", dec = ".",...)
#或者使用read.csv2,使用逗号作为小数点,使用分号作为字段分隔符。
read.csv2(file,header=TRUE,sep=“;”,dec=“,”,…)
#读取制表符分隔的文件
read.delim(file,header=TRUE,sep=“\t”,dec=“.”,…)
read.delim2(file,header=TRUE,sep=“\t”,dec=“,”,…)
文件:包含要导入R的数据的文件的路径。
sep:字段分隔符字符。“\t”用于制表符分隔的文件。
header :逻辑值。如果为TRUE,read.table()假定文件有一个标题行,因此第1行是每列的名称。如果不是这样,可以添加参数header=FALSE。
dec:文件中用于小数点的字符。
读取本地文件
要导入本地.txt或.csv文件,语法如下:
#读取一个名为“mtcars.txt”的txt文件
my_data<-read.delim(“mtcars.txt”)
#读取一个名为“mtcars.csv”的csv文件
my_data<-read.csv(“mtcars.csv”)
上面的R代码假设文件“mtcars.txt”或“mtcars.csv”在当前工作目录中。要知道当前的工作目录,请在R控制台中键入getwd()函数。
也可以使用 函数file.choose()以交互方式选择文件 ,如果您是R编程的初学者,我建议您这样做:
#读取txt文件
my_data<-read.delim(file.choose())
#读取csv文件
my_data<-read.csv(file.choose())
如果在RStudio中使用上面的R代码,系统会要求您选择一个文件。
如果您的数据包含带文本的列,R可以假设列是一个因子或分组变量(例如:“good”、“good”、“bad”、“bad”、“bad”)。如果 不想将文本数据转换为因子 ,请在read.delim()、read.csv()和read.table()函数中添加 stringsAsFactor=FALSE 。在这种情况下,与文本文件中的字符串对应的数据框列将是字符。
例如:
my_data<-read.delim(file.choose(),
stringsAsFactor=FALSE)
如果字段分隔符是例如“|”,则可以将常规函数read.table()与其他参数一起使用:
my_data<-read.table(file.choose(),
sep=“|”,header=TRUE,dec=“.”)
从internet读取文件
可以使用函数read.delim()、read.csv()和read.table()从web导入文件。
my_data<-read.delim(“http://www.sthda.com/upload/boxplot_format.txt”)
总结
导入本地.txt文件:read.delim(file.choose())
导入本地.csv文件:read.csv(file.choose())
从internet导入文件:如果是txt文件,则为read.delim(url);如果是csv文件,则为read.csv(url)