R group_by-如何按orderID分组?

时间:2019-10-02 12:13:48

标签: r dplyr

由于某种原因,我无法对数据进行分组和汇总。

  amazon2 <- amazon %>% 
  group_by(amazon.order.id, quantity.shipped) %>%  
  summarize(amazon2, quantity = sum(quantity.shipped, na.rm = TRUE))

瞥见这

  

组:amazon.order.id [388] $ amazon.order.id   “” 204​​-0311626-3448315“,” 204​​-9226726-5233164“,” 026-2318018 -... $   出货数量1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,   1,1,1,1,...

结果只给了我491单元格,什么也没有。

3 个答案:

答案 0 :(得分:0)

逐行阅读代码,然后与最后一行文本进行比较。

您没有在任何地方指定要sum进行任何操作。

尝试将最后一行编辑到

group_by(amazon.order.id) %>% summarise(sum(quantity.shipped))

然后阅读https://datacarpentry.org/R-genomics/04-dplyr.html#split-apply-combine_data_analysis_and_the_summarize()_function

答案 1 :(得分:0)

group_by将不对组的值求和。它将创建您可以在其中执行操作(例如汇总)的组。

您会看到瞥见始于“ Groups:amazon.order.id [388]”。这意味着您的集合中有388个组。

答案 2 :(得分:0)

amazon2 <- as.data.frame(amazon) %>% 
  group_by(amazon.order.id) %>% 
  select(amazon.order.id, quantity.shipped) %>%  
  dplyr::summarise(quantity = sum(quantity.shipped))

好像plyr覆盖dplyr导致错误。所以这就是答案。