R. as.numeric。 0不等于0

时间:2015-02-07 12:07:19

标签: r

我需要R中函数as.numeric的帮助。 我使用的数据框包含具有以下结构的因素:

data[, 28] <- as.character(data[, 28])
attributes(data)$variable.labels[28] <- "[text]"
data[, 28] <- factor(data[, 28], levels=c("A0","A1","A2","A3","A4","A5"),labels=c("Stimme überhaupt nicht zu", "", "", "", "", "Stimme voll und ganz zu"))

现在,如果使用以下命令:

df3[,x] <- as.numeric(as.factor(df3[,x])) 

A0(等级)理想情况下应表示零(0)变为1。 据我所知,这可能是因为as.numeric的性质创建了一个从1开始的向量。因此0不包括在内。 现在我的问题是如何将因子更改为数字,输出包含零(0)作为数值。

1 个答案:

答案 0 :(得分:2)

R中的因子在内部表示为整数,第一个因子是1.

如果您希望因子从零开始,则只需使用

df3[,x] <- as.numeric(as.factor(df3[,x])) -1