Используя select_ и запускается с R

Почему этот код не работает?

mtcars %>% select_("starts_with('d')")

Error in eval(expr, envir, enclos) : could not find function "starts_with"

Это упрощенный пример. Я пытаюсь передать команду select_ функции.

1 ответ

Разница между select() а также select_() это их нестандартная / стандартная оценка аргумента. Если функция как starts_with() используется в качестве аргумента select_() это должно быть указано с тильдой:

library(dplyr)
mtcars %>% select_(~starts_with('d'))

Это дает тот же результат, что и при обычном использовании select:

identical(mtcars %>% select_(~starts_with('d')), mtcars %>% select(starts_with('d')))
#[1] TRUE

Для получения дополнительной информации см. Виньетку о нестандартной оценке: vignette("nse"),

Другие вопросы по тегам