如何按n列的相等累计和拆分data.table?这些数据包括代码,n是每个代码在一个更大的集合中的行数(我没有在这里复制)。
我想能按大约的比例把代码分开。50000 cumsum的n,生成不同行长度的data.tables,但具有总计约50000的唯一代码。
实际上,n是随机的,不是模式化的,但这在复制小样本量的数据方面做得很好:
dt <- dt <- data.table(code=c(1:500),N=c(rep(c(100:500),100),rep(c(100:500),100),rep(c(100:500),100), rep(c(100:500),100), rep(c(100:500),100)))
dt$cumsum <- cumsum(dt$N)
desired1 <- dt[1:233,] ###first 50,000 cumsum of N
desired2 <- dt[234:359,]
desired3 <- dt[360:565,]
desired4 <- dt[566:713,] ###etc every 50,000 cumsum of N