【发布时间】:2018-08-04 16:47:18
【问题描述】:
我想按照一些简单的规则从一袋彩色弹珠中抽出,无需更换。有多个相同颜色的弹珠(例如,5 个蓝色、3 个红色、7 个黄色、4 个绿色)。假设我画了 3 个弹珠,一次一个弹珠。每次抽奖后,我都会删除该颜色的所有弹珠。例如,我选择一个绿色,我从袋子中取出所有绿色弹珠;我选择一个红色,我从袋子里取出所有红色弹珠,等等。
我不完全清楚如何最有效地删除与焦点绘制相同颜色的所有弹珠,而无需大量的 for 循环。下面的虚拟代码仅根据绘制向量绘制弹珠。
#Dummy code
set.seed(123)
multiple_draws <- c(3,2,4,1)
bag <- c(rep("blue",5),rep("red",3),rep("yellow",7),rep("green",4))
sapply(seq(length(multiple_draws)), function(i) sample(bag, multiple_draws[i],replace=F), simplify=F)
任何指针将不胜感激。
【问题讨论】:
-
@www 抱歉,已修复
标签: r list vector dplyr sample