【发布时间】:2018-11-08 03:56:55
【问题描述】:
我在一个带有长字符串的数据集中有一列,我想将特定列转换为 R 中的简单整数值(散列或索引),以便我可以轻松地将其他表与该特定列连接起来,任何人都可以提出一些建议这个?
library(tidyverse)
mpg
mpg <- mpg %>% mutate(displ = as.character(displ), year =
as.character(year)) %>%
mutate(matcher = as.character(paste(model, displ, year, sep = "")))
View(mpg)
如果您看到 matcher 列,它有一个长字符串值作为字符向量,我想将这些值映射到简单的整数,如 1、2、3 等。我该怎么做?
【问题讨论】:
-
嗨,杰米玛,欢迎您。您能否为我们提供一个最小可重现示例,以便我们可以将您的一小部分数据剪切并粘贴到我们自己的 R 会话中,以及您尝试执行此任务的代码,以便我们可以得到相同的错误?当你这样做时,在这里得到答案要快得多。谢谢,祝你好运:)
-
您好,mysterious 谢谢,现在我已经用示例代码编辑了这个问题。
-
非常感谢。你有什么映射规则吗?看起来
matcher的 234 行中有 141 个唯一字符串。 -
非常感谢,它成功了。现在想用名为 matchnum 的新列加入另一个表。再次感谢
-
我认为下一步可能是您可以使用
purrr库和reduce命令执行的操作。查看stackoverflow.com/questions/8091303/… 的想法:)