繁体   English   中英

r,坚持使用标签将数字转换为因子

[英]r, stuck on converting numeric to factor with labels

我被困在这个话题上,我是 R 的新手。 我正在尝试采用这种重复模式并使用 factor()、as.factor() 或 levels() 分配级别以将级别分配给 1-5,例如 1 = 是、2 = 否、3 = 有时、4 = 几乎从不,5 = 几乎总是(这些仅用于本示例的目的,我知道它们在顺序方面没有意义)。 我没主意了。 我尝试将以下代码分配给变量 ex: x 并将其设置为 as.factor(x) 然后使用:

x <- as.factor(x)
y <- factor(x, c('yes','no','sometimes','almost never', 'almost always')
#or y <-  factor(a, levels = c('yes','no','sometimes','almost never', 'almost always'), ordered = TRUE)

output 总是给我一堆 NA 值。 我试图让 R 将 1-5 转换为相应的值和 output 是 < 否 < 有时等...就为我的值/级别提供内在顺序而言

我有这个模式的代码:

rep(c(1:5),each=3,times=4)

几乎拥有它,它的标签不是水平

factor(
  rep(c(1:5),each=3,times=4),
  levels = 1:5,
  labels = c('yes','no','sometimes','almost never', 'almost always'),
  ordered = TRUE
)

编辑:正如罗兰指出的那样,包括关卡和标签更安全。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM