相关疑难解决方法(0)

从元素具有权重的列表中选择k个随机元素

这里精美地描述没有任何权重(相等概率)的选择.

我想知道是否有办法将这种方法转换为加权方法.

我也对其他方法感兴趣.

更新:无需更换的采样

random algorithm math statistics probability

69
推荐指数
3
解决办法
3万
查看次数

Pythonic方式选择具有不同概率的列表元素

import random
pos = ["A", "B", "C"]
x = random.choice["A", "B", "C"]
Run Code Online (Sandbox Code Playgroud)

这段代码给了我"A","B"或"C"的概率相等.当你想要30%的"A",40%的"B"和30%概率的"C"时,是否有一种很好的表达方式?

python

35
推荐指数
5
解决办法
4万
查看次数

随机Python字典键,按值加权

我有一个字典,其中每个键都有一个可变长度列表,例如:

d = {
 'a': [1, 3, 2],
 'b': [6],
 'c': [0, 0]
}
Run Code Online (Sandbox Code Playgroud)

是否有一种干净的方法来获取随机字典键,按其值的长度加权? random.choice(d.keys())将对键进行相同的加权,但在上面的情况下,我希望'a'大约一半的时间返回.

python random dictionary

33
推荐指数
4
解决办法
2万
查看次数

标签 统计

python ×2

random ×2

algorithm ×1

dictionary ×1

math ×1

probability ×1

statistics ×1