Я суммирую групповые средства из таблицы, используя функцию summarize
из пакета dplyr в R. Я хотел бы сделать это динамически, используя строку имени столбца, хранящуюся в другой переменной.
Это "нормальный" способ, и он, конечно же, работает:
myTibble <- group_by( iris, Species)
summarise( myTibble, avg = mean( Sepal.Length))
# A tibble: 3 x 2
Species avg
<fct> <dbl>
1 setosa 5.01
2 versicolor 5.94
3 virginica 6.59
Однако вместо этого я хотел бы сделать что-то вроде этого:
myTibble <- group_by( iris, Species)
colOfInterest <- "Sepal.Length"
summarise( myTibble, avg = mean( colOfInterest))
Я прочитал страницу Программирование с помощью dplyr и попробовал кучу комбинации quo
, enquo
, !!
, .dots=(...)
и т. д., но я еще не придумал, как это сделать.
Мне также известен этот ответ, но 1 ) когда я использую функцию стандартной оценки standardise_
, R сообщает мне, что она обесценилась, и 2) этот ответ совсем не выглядит элегантным. Итак, есть ли хороший и простой способ сделать это?
Спасибо!