相关疑难解决方法(0)

case_when在mutate管道中

它似乎dplyr::case_whendplyr::mutate调用中的其他命令不同.例如:

library(dplyr)

case_when(mtcars$carb <= 2 ~ "low",
          mtcars$carb > 2 ~ "high") %>% 
  table
Run Code Online (Sandbox Code Playgroud)

作品:

.
high  low 
  15   17 
Run Code Online (Sandbox Code Playgroud)

但放入case_when一个mutate链:

mtcars %>% 
  mutate(cg = case_when(carb <= 2 ~ "low",
                        carb > 2 ~ "high"))
Run Code Online (Sandbox Code Playgroud)

你得到:

 Error: object 'carb' not found
Run Code Online (Sandbox Code Playgroud)

虽然这很好

mtcars %>% 
  mutate(cg = carb %>% 
           cut(c(0, 2, 8)))
Run Code Online (Sandbox Code Playgroud)

r dplyr

34
推荐指数
4
解决办法
5万
查看次数

标签 统计

dplyr ×1

r ×1