如何解决保留级别顺序时的数字因素
我知道与此有关的问题很多,我一直在寻找解决方案,但不幸的是我没有得到我所需要的...:
我有一个包含因子和数字变量的混合数据框。我需要所有因素为数字。 我找到了一种转换它们的解决方案,但是重要的是要仍然知道哪个数字表示哪个级别。更确切地说,我希望参考级别的数字较小(例如1),而其他级别的数字较大。
此示例说明了我的问题:
data <- data.frame(group = c("case","control","case","control"),height = c(167,200,166,180),diabetes = c("yes","no","yes"))
data$group <- as.factor(data$group)
data$diabetes <- as.factor((data$diabetes))
data$group <- relevel(data$group,ref="control")
levels(data$group)
str(data)
i <- sapply(data,is.factor)
data[i] <- lapply(data[i],as.numeric)
str(data)
在列组中,控制是参考,这很重要。当我看水平时,一切都有意义,这是第一位的。 但是,为控制分配了2级,并指定了案例1级,当我转换为数字时,这也变得很清楚。
我对此行为感到困惑,谁能告诉我如何分配控件“ 1”和大小写“ 2”(也适用于我的实际数据框中的其他列)。也许为什么会这样?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。