在dplyr中使用case_when后跟select语句

时间:2017-09-27 15:11:22

标签: r dplyr

我在dplyr中使用case_when后跟一个select语句并收到错误。我要么不正确,要么可能是错误?

mtc2 <- mtcars %>% 
  mutate(Model = row.names(mtcars)) %>% 
  mutate(UserComment = case_when(
                       grepl("Mazda", Model) ~ "Very Fun",
                       grepl("Cadillac", Model) ~ "Favorite",
                       TRUE ~ "Other")) %>% 
select(Model, UserComment, everything())

当我分开&#34;选择&#34;从块中它工作正常。

mtc3 <- mtcars %>% 
   mutate(Model = row.names(mtcars)) %>% 
   mutate(UserComment = case_when(
                        grepl("Mazda", Model) ~ "Very Fun",
                        grepl("Cadillac", Model) ~ "Favorite",
                        TRUE ~ "Other"))

mtc3 <- mtc3 %>% 
   select(Model, UserComment, everything())

我做错了什么?

> grepl("Mazda", Model) ~ "Very Fun",
Error: unexpected ',' in "grepl("Mazda", Model) ~ "Very Fun","
>     grepl("Cadillac", Model) ~ "Favorite",
Error: unexpected ',' in "    grepl("Cadillac", Model) ~ "Favorite","
>     TRUE ~ "Other")) %>% 
Error: unexpected ')' in "    TRUE ~ "Other")"
>   select(Model, UserComment, everything())
Error in select(Model, UserComment, everything()) : 
  object 'Model' not found

> grepl("Mazda", Model) ~ "Very Fun",
Error: unexpected ',' in "grepl("Mazda", Model) ~ "Very Fun","
>     grepl("Cadillac", Model) ~ "Favorite",
Error: unexpected ',' in "    grepl("Cadillac", Model) ~ "Favorite","
>     TRUE ~ "Other")) %>% 
Error: unexpected ')' in "    TRUE ~ "Other")"
>   select(Model, UserComment, everything())
Error in select(Model, UserComment, everything()) : 
 object 'Model' not found

dplyr版本0.7.3和R版本3.3.3。

0 个答案:

没有答案