我有一个带有变量颜色的数据集(称为数据)。COLOR 的模式是数字,类别是因子。首先,我对“数字”有点困惑——当打印出来时,COLOR 的数据不是数字——它们都是字符值,如白色、蓝色或黑色等。对此的任何澄清表示赞赏。
此外,我需要编写R代码来返回COLOR变量的级别,然后确定该变量的当前参考水平,最后将该变量的参考水平设置为白色。我尝试使用因子,但完全不成功。
感谢您花时间提供帮助。
mode(DATA$COLOR)
是"numeric"
因为 R 在内部将因子存储为数字代码(以节省空间),加上与代码值相对应的相关标签向量。当您打印因子时,R 会自动为每个代码替换相应的标签。
f <- factor(c("orange","banana","apple"))
## [1] orange banana apple
## Levels: apple banana orange
str(f)
## Factor w/ 3 levels "apple","banana",..: 3 2 1
c(f) ## strip attributes to get a numeric vector
## [1] 3 2 1
attributes(f)
## $levels
## [1] "apple" "banana" "orange"
## $class
## [1] "factor"
...我需要编写 R 代码来返回 COLOR 变量的级别...
levels(DATA$COLOR)
...然后确定该变量的当前参考水平,
levels(DATA$COLOR)[1]
...最后将此变量的参考级别设置为白色。
DATA$COLOR <- relevel(DATA$COLOR,"White")