Добавить столбец на основе динамически именованных столбцов - PullRequest
1 голос
/ 10 мая 2019

Новый столбец должен быть добавлен к существующему фрейму данных так, чтобы он представлял собой среднее значение некоторых других столбцов, которые выбираются динамически.

Я предпочитаю использовать dplyr, и поэтому решение может выглядеть примерно так::

selected_columns <- c("am", "mpg")
dplyr::mutate_at(mt_cars, vars(selected_columns), funs(new_col = rowMeans(.)))

Есть ли способ изменить этот чанк или требуется другой подход?

1 Ответ

1 голос
/ 10 мая 2019

Здесь нам просто нужно подставить в столбцы данных (.) строку vector и получить rowMeans

library(dplyr)
mtcars  %>%
     mutate(new_col = rowMeans(.[selected_columns]))

mutate не имеет параметра funs (funs уже устарел с list) и находится в mutate_if/mutate_at/mutate_all.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...