我在R的group_by()结果中得到重复。说我正在尝试按名称对以下数据框进行分组:
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)
但是,我一直两次列出“ Sally”。相反,我只希望Sally的总销售额获得一次(25)。如何在“名称”列中获得不同的值?我整天一直在搜索,因为我认为group_by应该这样做。
我是否使用distinct()?我在Python HERE上看到了类似的帖子,并且最杰出的贡献者说用户应该尝试使用sort。我实际上进行了尝试,但是R Studio突然说,当我添加它来获取以下代码时,它找不到对象“名称”:
example %>% sort(name) group_by(name) %>% select(name, sales)
但是当我删除sort()函数时,R设法读取“ group_by(name)”就好了。我想念什么?
谢谢
答案 0 :(得分:1)
我们可以使用summarise
来sum
按“名称”分组的“销售”
example %>%
group_by(name) %>%
summarise(sales = sum(sales))