【发布时间】:2013-01-16 02:18:44
【问题描述】:
在data.table 中更改factor 列的级别的正确方法是什么(注意:不是数据框)
library(data.table)
mydt <- data.table(id=1:6, value=as.factor(c("A", "A", "B", "B", "B", "C")), key="id")
mydt[, levels(value)]
[1] "A" "B" "C"
我正在寻找类似的东西:
mydt[, levels(value) <- c("X", "Y", "Z")]
当然,上面的行是行不通的。
# Actual # Expected result
> mydt > mydt
id value id value
1: 1 A 1: 1 X
2: 2 A 2: 2 X
3: 3 B 3: 3 Y
4: 4 B 4: 4 Y
5: 5 B 5: 5 Y
6: 6 C 6: 6 Z
【问题讨论】:
-
你仍然可以用传统的方式设置它们:levels(mydt$value)
-
我没有尝试明显的 :) 谢谢!把它作为答案,以便我接受?
标签: r data.table