Dplyr:重新编码数字和字符向量
Dplyr: Recode numeric and character vectors
我脑子里有一个死亡屏幕。如何在 dplyr
中使用 recode
?
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))
我脑子里有一个死亡屏幕。如何在 dplyr
中使用 recode
?
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))