Здесь: https://rpubs.com/hadley/dplyr-programming они пишут следующее.
my_summarise <- function(df, group_by) {
group_by <- enquo(group_by)
print(group_by)
df %>%
group_by(!!group_by) %>%
summarise(a = mean(a))
}
my_summarise(df, g1)
#> ~g1
#> # A tibble: 2 × 2
#> g1 a
#> <dbl> <dbl>
#> 1 1 4.5
#> 2 2 2.0
Поэтому я пытаюсь скопировать его, используя свое представление о функции и мои данные.
library(MASS)
not.fun <- function(data, column) {
column <- enquo(column)
data %>% slice(1:10) %>% select(!!column)
}
not.fun(MASS::Cars93, Length)
Error in select(., !!column) : unused argument (!!column)
Но, угадайте что, это не работает. Как заставить это работать, не используя строки? Я был бы заинтересован в результате, возможно, сделанном в базе R, если бы потребовалось столько строк кода для записи в результате в каком-то конкретном c пакете.