c_across() is designed to work with rowwise() to make it easy to perform row-wise aggregations. It has two differences from c():
It uses tidy select semantics so you can easily select multiple variables. See vignette("rowwise") for more details.
It uses vctrs::vec_c() in order to give safer outputs.
c_across(cols)
Arguments
cols: <tidy-select> Columns to transform. You can't select grouping columns because they are already automatically handled by the verb (i.e. summarise() or mutate()).
Examples
df <- tibble(id =1:4, w = runif(4), x = runif(4), y = runif(4), z = runif(4))df %>% rowwise()%>% mutate( sum = sum(c_across(w:z)), sd = sd(c_across(w:z)))