Я получаю дубликаты результатов group_by () в R. Скажем, я пытаюсь сгруппировать следующий фрейм данных по имени:
name <- c("John", "Sally", "Sally", "Sue")
sales <- c(10, 20, 5, 30)
example <- data.frame(name, sales)
print(example)
Поэтому я хотел создать таблицу, в которой показаны все продажи для каждого продавца, используя приведенный ниже код:
library(dplyr)
example %>% group_by(name) %>% select(name, sales)
Однако я продолжаю получать "Салли" дважды. Вместо этого я хочу получить Салли только один раз с ее общим объемом продаж (25). Как мне получить различные значения в моем столбце «имя»? Я гуглил весь день, так как думал, что group_by должна это сделать.
Могу ли я использовать отличный ()? Я видел похожий пост для Python ЗДЕСЬ, и главный участник сказал, что пользователь должен попробовать использовать Сортировать. Я действительно попробовал, но внезапно R Studio говорит, что не может найти "имена" объекта, когда я добавляю его, чтобы получить этот код:
example %>% sort(name) group_by(name) %>% select(name, sales)
Но когда я удаляю функцию sort (), R отлично справляется с чтением «group_by (name)». Что мне не хватает?
Спасибо
group_by
, ниselect
не должны приводить к разному количеству строк (в целом); первый просто контролирует, как некоторые изdplyr
глаголов относятся к вещам, а второй влияет на количество столбцов (более или менее). - person r2evans   schedule 30.10.2018group_by
изменяет способ работы последующих вычислений (т. Е. Внутри группы, а не по всем строкам), но сам по себе не изменяет фрейм данных таким образом, чтобы печатать по-другому. - person Jon Spring   schedule 30.10.2018