r - Dplyr:重新编码数字和字符向量

标签 r dplyr recode

我的脑海里出现了死亡画面。如何使用recodedplyr

data = data.frame(id=rep(1:10, each=1), time=seq(1:5), char = strrep("a", 3))

library(dplyr) # everything throws an error
data %>% recode(time, `1` = 0)
data %>% recode(time, `1` = 0L)
data %>% recode(time, 1 = 0)
data %>% recode(time, 1 = 0L)

data %>% recode(char, aaa = 0)
data %>% recode(time, "aaa" = 0)

致以诚挚的问候

最佳答案

这是因为 recode 采用向量作为参数,而不是 data.frame :

data %>% mutate(time2 = recode(time, `1` = 0L))
data %>% mutate(char2 = recode(char, aaa = 0))
data %>% mutate(char2 = recode(as.character(char), aaa = 0))

关于r - Dplyr:重新编码数字和字符向量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58555412/

相关文章:

r - 获取与 7 天前日期 'Around' 相关的分数

r - R中引号和表达式之间的区别

r - 如何根据另一个栅格网格单元值对栅格进行子集(分类)?

r - 获取分类数据频率矩阵的程序

r - 将 dplyr 函数应用于除一列之外的所有列

R:使用 car::recode 函数重新编码变量时出错

在循环中跨列替换多个值

r - 如何使用 mutate_at 和嵌套的 ifelse 语句自动重新编码许多变量?

r - 根据 R 中的两个条件语句逐行比较

r - (错误)理解 `first`中的 `xts`