!!
- это оператор без кавычек, который работает только в контексте цитирования , то есть в аргументах для глаголов dplyr.Сообщение об ошибке, которое вы видите с !!quo(foo)
, является ошибкой в текущей версии CRAN.Что касается версии для разработчиков, то теперь она выглядит так:
Error: Quosures can only be unquoted within a quasiquotation context.
# Bad:
list(!!myquosure)
# Good:
dplyr::mutate(data, !!myquosure)
Наконец, обратите внимание, что enquo()
следует использовать только для цитирования аргументов функции.По техническим причинам, связанным с компилятором R, он все еще работает с другими объектами, но не будет делать то, что вы ожидаете.Вы должны использовать его только внутри функции и только с именами аргументов этой функции.