Я смущен тем, как передавать аргумент функции в коды dplyr и ggplot. Я использую новейшую версию dplyr и ggplot2 Вот мой код для создания барплота (ясность против средней цены)
diamond.plot<- function (data, group, metric) {
group<- quo(group)
metric<- quo(metric)
data() %>% group_by(!! group) %>%
summarise(price=mean(!! metric)) %>%
ggplot(aes(x=!! group,y=price))+
geom_bar(stat='identity')
}
diamond.plot(diamonds, group='clarity', metric='price')
Ошибка:
Error in UseMethod("group_by_") : no applicable method for 'group_by_' applied to an object of class "packageIQR"
Для новейшей версии dplyr подчеркнутые verbs_() мягко устарели. Похоже, мы должны использовать quosures.
мои вопросы:
- Может ли кто-нибудь уточнить текущую передовую практику для этого?
-
Что случилось с вышеуказанным кодом? (нет слов подчеркивания dplyr, пожалуйста..)
-
В ggplot я знаю, что мы можем использовать aes_string(), но в моем случае только один из параметров в aes передается из аргумента функции.
Спасибо заранее.