解答例_5_2

解答例:練習問題_5_2 条件付き確率

最初の関数や集合の定義は前問を流用しています。

# sからiの倍数の部分集合を取り出す関数
def fa(i, s):
    return {x for x in s if x%i ==0 } 

omg = set(range(1, 21))
a2, a3 = fa(2, omg), fa(3, omg)

p_a2_a3 = (len(a2 & a3)/len(omg)) / (len(a3)/len(omg))
p_a3_a2 = (len(a3 & a2)/len(omg)) / (len(a2)/len(omg))

print('p_a2_a3: ', p_a2_a3, '\n'
      'p_a3_a2: ', p_a3_a2, 
      sep='')

p_a2_a3: 0.5
p_a3_a2: 0.3

こちらもベン図を掲載します。

1. P(a2|a3)
2. P(a3|a2)

p_a2_a3 または p_a3_a2 を求める式で len(omg) は分母と分子の両方にあるので取ってしまっても結果は同じです。

タイトルとURLをコピーしました