本文共 1131 字,大约阅读时间需要 3 分钟。
本节书摘来异步社区《R数据可视化手册》一书中的第1章,第1.3节,作者:【美】Winston Chang,更多章节内容可以访问云栖社区“异步社区”公众号查看。
问题
如何加载一个分隔符式的文本文件中的数据?方法
加载逗号分隔组(CSV)数据的最常用方法是:data <-read.csv("datafile.csv")```讨论由于数据文件有许多不同的格式,为了加载它们,提供了很多对应的选项。如果一个数据集首行没有列名:
data <-read.csv("datafile.csv", header=FALSE)`
#手动为列名赋值names(data) <-c("Column1","Column2","Column3")```还可以用sep参数来设置分隔符号。如果是空格分隔,使用sep=" ";如果是制表符分隔,使用\t。
data <-read.csv("datafile.csv", sep="t")`
"First","Last","Sex","Number""Currer","Bell","F",2"Dr.","Seuss","M",49"","Student",NA,21```得到的数据框将会把First、Last等存储为因子,尽管此时将它们视为字符串(或使用R中的术语,字符:character)更为合理。为了区别这一点,可以设置stringsAsFactors=FALSE。如果有些列应该被处理为因子格式,你可以再逐个转换:
data <-read.csv("datafile.csv", stringsAsFactors=FALSE)
data$Sex <-factor(data$Sex)
str(data)
'data.frame': 3 obs. of 4 variables:
$ First : chr "Currer" "Dr." ""$ Last : chr "Bell" "Seuss" "Student"$ Sex : Factor w/ 2 levels "F","M": 1 2 NA$ Number: int 2 49 21`
或者,你可以在加载的时候不做设置(字符串自动转换为因子),加载之后再对需要的列进行因子到字符的转换。 另见
read.csv()是对read.table()一个便捷的封装函数。如果需要更多的输入控制,参见?read.table。转载地址:http://rxuwa.baihongyu.com/