【发布时间】:2018-10-26 00:15:59
【问题描述】:
我想在dplyr::summarise 中使用组的大小作为分组操作的一部分。
例如,通过将cars 数据按cyl 分组并将手册数除以组的大小,按柱面计算手册的比例:
mtcars %>%
group_by(cyl) %>%
summarise(zz = sum(am)/group_size(.))
但是,(我认为),因为 group_size 在分组 tbl_df 之后并且 . 未分组,所以返回
Error in mutate_impl(.data, dots) : basic_string::resize
有没有办法做到这一点?
【问题讨论】:
-
我们将此标记为重复,但它有一个细微差别,即标题无法传达,以及为什么不能简单地使用
count()/tally():OP 想要组的一部分尺寸。所以在分母中使用n()而不是group_size(.),并且分子与当前相同。