В настоящее время я разрабатываю пакет, в котором я пытаюсь реализовать функцию, которая внутренне использует dplyr::group_by
.Тем не менее, после проверки пакета (devtools CRAN проверяет), я получаю ПРИМЕЧАНИЕ, в котором говорится, что no visible binding for global variable Levels
.
foo <- function(x) {
out <- data.frame(Levels = x) %>%
group_by(Levels) %>%
summarise(n = n())
return(out)
}
foo: no visible binding for global variable 'Levels'
Undefined global functions or variables:
Levels
Для того, чтобы сделать это не NSE, я мог бы использовать group_by_()
со строкой, но я понял, что этот способ не рекомендуется в пользу использования кавычек.Тем не менее, мне все еще трудно понять, как это сделать.
Я пытался использовать one_of()
, но безуспешно:
foo <- function(x) {
table_full <- data.frame(Levels = x) %>%
group_by(one_of("Levels")) %>%
summarise(n = n())
}
Error in mutate_impl(.data, dots) :
Evaluation error: No tidyselect variables were registered
Что было бы наиболее правильным способом достижениячто?