我需要从100个数字的集合Y中随机选择一个数字,从[1.00到2.00),并具有以下概率的四个子集。
- Y1-> [1.00-1.39)---概率(0.4)
- Y2-> [1.40-1.69)---概率(0.3)
- Y1-> [1.70-1.89)---概率(0.2)
- Y1-> [1.90-1.99)---概率(0.1)
我该如何解决这个问题?
我需要从100个数字的集合Y中随机选择一个数字,从[1.00到2.00),并具有以下概率的四个子集。
我该如何解决这个问题?
您可以使用random.choices
。好处是您可以指定权重
import random
def pick_random():
randoms = [random.uniform(1.0,1.39),random.uniform(1.4,1.69),random.uniform(1.7,1.89),random.uniform(1.9,1.99)]
weights = [0.4,0.3,0.2,0.1]
return round(random.choices(randoms,weights=weights)[0],2)