为R中的colClasses指定多种数据类型

时间:2015-03-29 16:34:21

标签: r

如果我想在R中分析的数据文件有多种数据类型,并且我想调用colClasses来指定各列所需的数据类型,那么我该怎样做呢?我使用的示例文件是:http://www.cyclismo.org/tutorial/R/_static/trees91.csv

例如,当我输入

tree <- read.csv("trees91.csv", header=T, sep=",", dec=".", colClasses=c(C,N,REP,LFBCC,STBCC,RTBCC="integer", CHBR="character", "double"), nrows=70)

我收到以下错误:

Error in read.table(file = file, header = header, sep = sep, quote = quote,  : object 'N' not found

总共有28列,具有不同数据类型的列散布在整个文件中。例如,前两列都是整数值,而第三列是字符值,因此是第四列。我想要做的是指定哪些列包含整数值(列C,N,REP,LFBCC,STBCC和RTBCC),具有字符值(CHBR)的列,并指定其余列包含十进制值。

我意识到在这种情况下,简单地调用read.table会处理工作而速度没有明显的损失,但我正在使用这个文件来练习分析使用colClasses有用的大文件。我也意识到我可以简单地指定CHBR列是“字符”类型,并留下R将所有其他列类型设置为默认类型,但我的目标是凭经验声明所有列数据类型。

1 个答案:

答案 0 :(得分:0)

您可以使用以下任意一种进行指定:

  

colClasses = c(“整数”,“整数”,“字符”,“字符”)

  

colClasses = list(整数= 1:2,字符= 3:4)