R:如何定义分区以使用 2 个或更多变量 (multidplyr) 划分组



我对multidplyr有问题。我的原始数据:

      warehouse quantity   stock_date flag_stock
1         a        1       2018-01-01     1
2         b        2       2018-01-01     0
3         a        0       2018-01-02     1 
4         a        2       2018-01-02     1
...
 cluster <- multidplyr::create_cluster(detectCores() - 1)
 set_default_cluster(cluster)

我想使用 multidplyr 按仓库和date_add聚合数据:

warehouse.stock %>% 
multidplyr::partition(warehouse.stock, 
groups = c(warehouse, stock_date), cluster = cluster) %>% 
summarize(n = sum(quantity), disp = sum(flag_stock)) %>% 
collect()

但是当我运行代码时,我收到了以下错误消息:

错误:所有分区变量必须已存在

谢谢!

分组变量必须位于原始数据集中,stock_date列不会出现在上面的数据集中。

这是你想要的吗?

warehouse.stock %>% 
multidplyr::partition(., 
groups = c(warehouse, date_add), cluster = cluster) %>% 
summarize(n = sum(quantity), disp = sum(flag_stock)) %>% 
collect()

最新更新