Рассмотрим фрейм данных:
data = data.frame(a=c(1,1,1,2,2,3),
b=c("apples", "oranges", "apples", "apples", "apples", "grapefruit"),
c=c(12, 22, 22, 45, 67, 28),
d=c("Monday", "Monday", "Monday", "Tuesday", "Wednesday", "Tuesday"),
out = c(12, 14, 16, 18, 20, 22),
rate = c(0.01, 0.02, 0.03, 0.04, 0.07, 0.06))
Я пытаюсь group_by и, тем не менее, получаю сообщение об ошибке
Error in new_quosures(NextMethod()) :
could not find function "new_quosures"
Я использую следующий код:
model.data.dim.names <- c("a", "b", "c")
data2 <- data %>% group_by_(.dots = model.data.dim.names) %>% summarise(
mean_adj1 = (mean(out, na.rm=FALSE)),
mean_adj2 = (mean(out)/mean(rate))
)
Обратите внимание, что это фиктивные данные, и ошибка воспроизводится в ОС Windows с фиктивными данными.Кроме того, я работаю на ОС Windows.Кроме того, я попробовал следующее:
- Remove plyr
- Проверка и редактирование значений NA / Infinite
- Превращение фрейма данных в таблицу данных и запуск кода
Не могли бы вы помочь мне понять основную причину ошибки или альтернативу, которую я мог бы использовать?
Answer:
1) tidyr library screws up with it. Removing tidyr helps
2) use most updated dplyr library and group_by/ group_by_at/group_by(!!!syms(model.data.dim.names) works