Random 随机元素的统计/加权/概率选择

Random 随机元素的统计/加权/概率选择,random,probability,Random,Probability,我正在创建一组项目,并用每个项目计算其在样本中出现的次数。稍后,我希望随机选择一个项目,但我希望选择任何特定项目的机会与所有项目的所有出现次数之和相等 我相信我已经找到了一个很好的解决方案,但我感兴趣的是这个概念的标准术语是什么,实现它的标准方法是什么。这本身没有名字,但是这是一个重要的步骤,在粒子过滤过程中,根据证据更新你的信念,这可能是你正在寻找的术语 从0到n-1中选择一个随机数(r)(n是所有项目的出现总数)。然后迭代每个项目,并从r中减去出现的次数。低于零时,选择最后一项。请注意,将同

我正在创建一组项目,并用每个项目计算其在样本中出现的次数。稍后,我希望随机选择一个项目,但我希望选择任何特定项目的机会与所有项目的所有出现次数之和相等


我相信我已经找到了一个很好的解决方案,但我感兴趣的是这个概念的标准术语是什么,实现它的标准方法是什么。

这本身没有名字,但是这是一个重要的步骤,在粒子过滤过程中,根据证据更新你的信念,这可能是你正在寻找的术语

从0到n-1中选择一个随机数(r)(n是所有项目的出现总数)。然后迭代每个项目,并从r中减去出现的次数。低于零时,选择最后一项。请注意,将同一项目分组到同一位置并不重要。您可能有重复,这仍然有效


或者,如果您的事件单独存储在一个数组中(而不是直方图),只需从数组中选择一个随机索引。

大量重复项:我知道的最早的是[如何生成与直方图匹配的点?](),但您问题的相关列有一些类似和