这真是令人困惑的行为:
x <- factor(1:3, levels = 1:4, labels = letters[1:4])
x
# [1] a b c
# Levels: a b c d
labels(x)
# [1] "1" "2" "3"
levels(x)
# [1] "a" "b" "c" "d"
为什么labels()
返回给levels =
的值(尽管出于某种原因过滤为实际使用的值(,而levels()
返回提供给labels =
的值(在检查x
时也作为Levels:
给出(?
这是文档中描述的预期行为(请参阅值部分(:
。对于向量,结果是名称或seq_along(x(...
> seq_along(x)
[1] 1 2 3