我们有7个曝光和24个组。我们希望将七个曝光中的五个随机分配到组中,同时确保我们最终得到每次曝光的一致计数,这意味着每次曝光最终暴露的次数相同。我已经编写了一些代码来执行此操作,但我无法控制每次曝光显示的次数。例如:
exposures <- c("A", "B", "C", "D", "E", "F", "G")
groups <- c(1:24)
table <- c()
for (i in 1:24){
draw <- sample(exposures, size=5, replace=F)
table <- rbind(table, draw)
}
table(table)
因此,计数结束有点接近,但是我能做些什么来确保每次曝光的最小值?谢谢!
编辑此外,我们需要每次曝光每组只出现一次。
答案 0 :(得分:1)
根据未使用的两次曝光,而不是五种曝光,更容易想到它。我们限制可以排除曝光的次数:
set.seed(1)
exc <- draw_exc(exposures,5,24,10)
assignment <- apply(exc,1,function(x) setdiff(exposures,x))
table(exc)
# exc
# A B C D E F G
# 7 4 6 6 8 10 7
table(assignment)
# assignment
# A B C D E F G
# 17 20 18 18 16 14 17
以下是插图:
{{1}}
因此,对于24组,最大排除数等于24减去最小出现次数。这个循环效率不高,但它似乎完成了工作。