<分区>
我想创建一个新变量,它表示许多其他以“prefix_”开头的变量的总和(或其他函数)。有没有办法使用这些 select() 助手(例如 starts_with())巧妙地做到这一点?
我认为 mutate_at() 对此不起作用,因为我只是想根据许多现有变量创建一个新变量。
我的尝试:
df %<>%
mutate(newvar = sum(vars(starts_with("prefix_"))))
这当然不行。非常感谢!
一个可重现的例子:
mtcars %<>%
rename("prefix_mpg" = mpg) %>%
rename("prefix_cyl" = cyl) %>%
mutate(newvar = sum(var(starts_with("prefix_"))))
预期输出将是 mtcars$newvar,它是 prefix_mpg 和 prefix_cyl 的总和。当然,我可以明确命名 mpg 和 cyl,但在我的实际情况中,它是一长串变量,太长以至于命名不方便。