r:查找变量中因子的级别值

时间:2015-10-11 15:23:16

标签: r

我需要帮助找出变量级别的值。 例如,

    therapy$type <- factor(therapy$type, levels = c(1: 3), labels = c("cbt", "ipt", "control"))

假设我忘记了每种治疗类型的水平(分配给他们的数字),我该如何找到它们? 结果应该告诉我像cbt = 1,ipt = 2,control = 3

1 个答案:

答案 0 :(得分:1)

如果您100%确定使用了levels = 1:3,则可以只写levels(therapy$type),标签将按原始顺序打印。因此,您可以使用结果向量的索引来告诉您原始级别。

但是,如果您执行levels = 9:11之类的操作,则无法分辨。 levels函数中的factor参数不会保存在任何位置。我个人认为这是对语言的疏忽,这些因素应该保存原始级别与使用factor创建的当前标签/级别之间的映射。