根据概率将变量设置为不同的值

时间:2015-12-03 15:26:05

标签: python probability either

我有一个变量x,我想将其设置为值1或2,概率为60%x = 1且40%x = 2。

我在一个类中执行此操作,因此每次单击按钮时x都应该重新生成,然后我将绘制它,但我不确定如何使用特定概率设置它。我知道我可以随便做,但这不是我想要的。

有谁知道怎么做?

3 个答案:

答案 0 :(得分:2)

Random使用统一分布,因此您可以像这样使用它:

x = 1 if random.random() < 0.6 else 2

答案 1 :(得分:1)

您只需取一个随机值,检查它是否小于所需的概率,然后返回第一个或第二个选项:

def random_choice(val1, val2, probability_of_val1):
    return val1 if random.random() < probability_of_val1 else val2

答案 2 :(得分:0)

一个简单的策略可能如下:

  1. 生成0-1
  2. 之间的随机数
  3. 如果随机数大于0.6赋值2
  4. 否则指定值1
  5. 执行此操作的Python代码:

    import random
    if random.random() > 0.6:
      x = 2
    else:
      x = 1