我正在尝试做一些非常简单的事情,但却找不到正确的指定方式。我只想从mutate_at
中排除一些命名列。如果我指定位置,它工作正常,但我不想硬编码位置。
例如,我想要与此相同的输出:
mtcars %>% mutate_at(-c(1, 2), max)
但是,通过指定mpg
和cyl
列名称。
我尝试了很多东西,包括:
mtcars %>% mutate_at(-c('mpg', 'cyl'), max)
有没有办法在mutate_at
中使用名称和排除?
答案 0 :(得分:36)
您可以使用vars
指定列,其工作方式与select()
相同,并允许您使用-
排除列:
mtcars %>% mutate_at(vars(-mpg, -cyl), max)
答案 1 :(得分:6)
一种选择是在one_of
mtcars %>%
mutate_at(vars(-one_of("mpg", "cyl")), max)