【问题标题】:Recoding Number to String R将数字重新编码为字符串 R
【发布时间】:2017-10-05 10:57:23
【问题描述】:

我是 R 新手,我正在尝试重新编码一个数值变量 这是 1,2,3 到字符串。我已经看到了怎么做,但我不知道为什么我的 不工作,也许是因为它应该是从字符串到数字? 这就是我得到的,提前感谢!

cars$origin = as.factor(cars$origin)
cars$origin
[1] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 1 1 3 2 2 2 2 2 1 1 1 1 1 3 1 3 1 1
[35] 1 1 1 1 1 1 1 1 2 2 2 3 3 2 1 3 1 2 1 1 1 1 1 1 1 1 1 1 1 3 1 1 1 1
[69] 2 2 3 3 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 1 3 1 2 1 3 1 1 1
Levels: 1 2 3

cars$origin <- recode(cars$origin, "1='american';2='european';3='japan'")

错误:参数 2 必须命名,而不是未命名

【问题讨论】:

  • 真的吗?我认为它应该写得很好,但错误仍然存​​在......

标签: r recode


【解决方案1】:

函数factor 有参数labels

cars$origin = factor(cars$origin, 
   levels = c(1, 2, 3), 
   labels = c("american", "european", "japan"))

【讨论】:

  • 这很符合逻辑!!问题已解决。谢谢!1
  • 在这种特定情况下,您已经指定了 levelnumber,它也可以在不指定 levels-parameter 的情况下工作。
  • 正确,@Jaap。在这种特定情况下,我们可以跳过levels 参数。不过,如果您不知道 factor 的确切行为,它仍然可以回答所有问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-06-28
  • 2018-04-14
  • 2012-10-27
  • 1970-01-01
相关资源
最近更新 更多