计算两个事件的概率

Python 概率基础

Alexander A. Ramírez M.

CEO @ Synergy Vision

独立性

设 A 和 B 为一次随机试验中的事件,二者相互独立的条件:

  1. A 与 B 的发生顺序不影响其概率。
  2. A 发生不影响 B 的概率。
  3. B 发生不影响 A 的概率。
Python 概率基础

公平抛硬币正反面概率

Python 概率基础

两次抛硬币的结果

Python 概率基础

两次抛硬币的结果

Python 概率基础

两次抛硬币的概率

Python 概率基础

两次抛硬币的联合概率

Python 概率基础

两次抛硬币的联合概率

Python 概率基础

两次抛硬币的联合概率

Python 概率基础

样本度量

生成代表两次公平抛硬币共 1000 次试验的样本

from scipy.stats import binom
sample = binom.rvs(n=2, p=0.5, size=1000, random_state=1)
array([1, 1, 0, 1, 0, 0, 0, 1, 1, 1, 1, 1, 0, 2, 0, 1, 1, 1, 0, 0, 2, 2,...

查找重复数据

from scipy.stats import find_repeats
find_repeats(sample)
RepeatedResults(values=array([0., 1., 2.]), counts=array([249, 497, 254]))
Python 概率基础

偏置硬币正反面概率

Python 概率基础

偏置硬币正反面概率

Python 概率基础

度量偏置样本

使用生成的 biased_sample 数据,计算各结果的相对频率

from scipy.stats import relfreq
relfreq(biased_sample, numbins=3).frequency
array([0.039, 0.317, 0.644])
Python 概率基础

联合概率计算

$$ $$

发动机 变速箱
故障 0.01 0.005
正常 0.99 0.995

$$ $$ $$P(发动机\ 故障\ 且\ 变速箱\ 故障)=?$$

$$ $$

P_Eng_fail = 0.01
P_GearB_fail = 0.005
P_both_fails = P_Eng_fail*P_GearB_fail
print(P_both_fails)
0.00005
Python 概率基础

用纸牌计算 P(A 或 B)

$$P(Jack\ or\ King) = ?$$ 一副扑克牌

Python 概率基础

用纸牌计算 P(A 或 B)(续)

$$P(Jack\ or\ King) = \color{red}{P(Jack)}+...$$ 扑克牌中的所有 J $$P(Jack\ or\ King) = \color{red}{\frac{4}{52}}+...$$

Python 概率基础

用纸牌计算 P(A 或 B)(续)

$$P(Jack\ or\ King) = P(Jack)+\color{red}{P(King)}$$ 扑克牌中的 J 和 K $$P(Jack\ or\ King) = \frac{4}{52}+\color{red}{\frac{4}{52}}$$

Python 概率基础

用纸牌计算 P(A 或 B)(续)

$$P(Jack\ or\ King) = P(Jack)+P(King)$$ 扑克牌中的 J 和 K $$P(Jack\ or\ King) = \frac{4}{52}+\frac{4}{52}=\frac{8}{52}=\frac{2}{13}$$

Python 概率基础

用纸牌计算 P(A 或 B)(续)

$$P(Jack\ or\ King) = P(Jack)+P(King)$$ 扑克牌中的 J 和 K $$P(Jack\ or\ King) = \frac{4}{52}+\frac{4}{52}=\frac{8}{52}=\frac{2}{13}$$

Python 概率基础

A 或 B 的概率

事件 A 的维恩图

Python 概率基础

A 或 B 的概率(续)

事件 A 与 B 的维恩图

Python 概率基础

A 或 B 的概率(续)

$$P(A\ or\ B) = ?$$ 事件 A 与 B 的维恩图

Python 概率基础

A 或 B 的概率(续)

$$P(A\ or\ B) = \color{red}{P(A)}+...$$ 互斥事件的 A 与 B 维恩图

Python 概率基础

A 或 B 的概率(续)

$$P(A\ or\ B) = P(A) + \color{red}{P(B)}$$ 互斥事件的 A 与 B 维恩图

Python 概率基础

有重叠的 P(A 或 B)

$$P(Jack\ or\ Heart)=?$$ J 或红桃

Python 概率基础

有重叠的 P(A 或 B)(续)

$$P(Jack\ or\ Heart) =\color{red}{P(Jack)}+...$$ J 或红桃 $$P(Jack\ or\ Heart) =\color{red}{\frac{4}{52}}+...$$

Python 概率基础

有重叠的 P(A 或 B)(续)

$$P(Jack\ or\ Heart) =P(Jack)+\color{red}{P(Heart)}\ ...$$ J 或红桃 $$P(Jack\ or\ Heart) =\frac{4}{52}+\color{red}{\frac{13}{52}}\ ...$$

Python 概率基础

有重叠的 P(A 或 B)(续)

$$P(Jack\ or\ Heart) =P(Jack)+P(Heart)...$$ J 与红桃的交集 $$P(Jack\ or\ Heart) =\frac{4}{52}+\frac{13}{52}...$$

Python 概率基础

有重叠的 P(A 或 B)(续)

$$P(Jack\ or\ Heart) =P(Jack)+P(Heart)-\color{red}{P(Jack\ and\ Heart)}$$ J 与红桃的交集 $$P(Jack\ or\ Heart) =\frac{4}{52}+\frac{13}{52}-\color{red}{\frac{1}{52}}$$

Python 概率基础

有重叠的 P(A 或 B)(续)

$$P(Jack\ or\ Heart) =P(Jack)+P(Heart)-P(Jack\ and\ Heart)$$ J 与红桃的交集 $$P(Jack\ or\ Heart) =\frac{4}{52}+\frac{13}{52}-\frac{1}{52}=\frac{16}{52}=\frac{4}{13}$$

Python 概率基础

P(A 或 B) 示意图

事件 A 的维恩图

Python 概率基础

P(A 或 B) 示意图(续)

事件 A 与 B 的维恩图

Python 概率基础

P(A 或 B) 示意图(续)

$$P(A\ or\ B)=?$$ 事件 A 与 B 的维恩图

Python 概率基础

P(A 或 B) 示意图(续)

$$P(A\ or\ B)=\color{red}{P(A)}+...$$ 事件 A 与 B 的维恩图

Python 概率基础

P(A 或 B) 示意图(续)

$$P(A\ or\ B)=P(A)+\color{red}{P(B)}\ ...$$ 事件 A 与 B 的维恩图

Python 概率基础

P(A 或 B) 示意图(续)

$$P(A\ or\ B)=P(A)+P(B)\ ...$$ 事件 A 与 B 交集的维恩图

Python 概率基础

P(A 或 B) 示意图(续)

$$P(A\ or\ B)=P(A)+P(B)-\color{red}{P(A\ and\ B)}$$ P(A 且 B) 的维恩图

Python 概率基础

P(A 或 B) 示意图(续)

$$P(A\ or\ B)=P(A)+P(B)-P(A\ and\ B)$$ 事件 A 与 B 交集的维恩图

Python 概率基础

用 Python 计算 P(Jack or Heart)

P_Jack = 4/52
P_Hearts = 13/52
P_Jack_n_Hearts = 1/52
P_Jack_or_Hearts = P_Jack + P_Hearts - P_Jack_n_Hearts
print(P_Jack_or_Hearts)
0.307692307692
Python 概率基础

让我们计算两个事件的概率

Python 概率基础

Preparing Video For Download...