计算数组中n个事件的并集概率

时间:2019-05-22 23:36:37

标签: php math probability probability-theory

我有一个包含N个概率(N个不同事件)的PHP数组。看起来像:

$events = [0.85, 1, 0, 0.15, 0.49, 1, 1, 0, 0, 0.59, 0.93]

其中数组中的每个值都是事件的概率。我需要计算出这些事件并集的概率。也就是说,如何计算至少一个事件发生的概率?

1 个答案:

答案 0 :(得分:3)

要计算至少一个事件发生的概率,必须计算不发生任何事件的概率,这是每个事件的(1 - p[event])乘积,然后从1中减去。使用以下代码:

$events = [0.85, 1, 0, 0.15, 0.49, 1, 1, 0, 0, 0.59, 0.93];
$prob = 1.0;
foreach ($events as $event) {
    $prob *= (1.0 - $event);
}
echo "probability of at least one event is " . (1 - $prob) . "\n";

输出:

probability of at least one event is 1

请注意,由于您的某些事件的概率为1(即肯定会发生),因此至少一个事件发生的概率也为1。