我有一个数据框,数据框已按需要排序,但现在我想在组中"切片".
此组的最大累计值应为10.当累计值> 10时,它应重置累计总和并重新开始
library(dplyr)
id <- sample(1:15)
order <- 1:15
value <- c(4, 5, 7, 3, 8, 1, 2, 5, 3, 6, 2, 6, 3, 1, 4)
df <- data.frame(id, order, value)
df
Run Code Online (Sandbox Code Playgroud)
这是我正在寻找的输出(我是"手动"完成的)
cumsum_10 <- c(4, 9, 7, 10, 8, 9, 2, 7, 10, 6, 8, 6, 9, 10, 4)
group_10 <- c(1, 1, 2, 2, 3, 3, 4, 4, 4, 5, 5, 6, 6, 6, 7)
df1 <- data.frame(df, cumsum_10, group_10)
df1
Run Code Online (Sandbox Code Playgroud)
所以我遇到了两个问题
对于第一部分,我尝试了group_by和cumsum的一些组合而没有运气
df1 <- …Run Code Online (Sandbox Code Playgroud)