請在下方 8 個欄位中,只在已知的 2 個輸入數值。假設兩個事件互相獨立,反推出其餘全部的機率。
只輸入 2 個欄位,其他欄位請保持空白。機率請以 0~1 的數值輸入(例:30% 就輸入 0.3)。
計算結果與圖形
只在已知的 2 個欄位輸入數值,按下「計算」,其餘的機率就會顯示在這裡。
這個頁面可以做什麼
- 兩件事(事件)相關的機率共有 8 個,包括各自發生與不發生的機率、「兩個都發生的機率 \(P(A \cap B)\)」、「至少一個發生的機率 \(P(A \cup B)\)」等。只要輸入其中已知的 2 個,就能反推出其餘全部
- 擅長一般計算機不容易做到的「反向」計算,例如「已知至少一個發生的機率是 58%,兩個都發生的機率是 12%,各自的機率是多少?」
- 除了答案,也會顯示計算過程(中間的算式),可以用來對作業的答案或驗算
- 這個頁面還整理了公式的淺顯解說,以及可直接複製到 Excel、Google 試算表、Python 使用的公式
只適用於兩件事互不影響(獨立)的情況。像骰子和硬幣這樣,一方的結果與另一方無關就可以使用;但像「抽籤後不放回、再抽第 2 次」這樣,一方的結果會改變另一方機率的情況,就不能使用。
這個計算有什麼用?
由問卷結果反推各自的比例(行銷)
由「知道商品 A 或商品 B 至少一個的人占 58%,兩個都知道的人占 12%」這樣的調查結果,可以反推出各自的知名度(30% 和 40%)。(這是把兩者的知名度視為獨立時的模型計算。)
在行銷實務中,手上常常只有彙整過的「合計數字」,想從中拆出個別數字時,這種反推就很有用。
由紀錄中的「結果」估算原本的機率
「一年中有 14.5% 的日子,2 台設備至少有一台停機;兩台同時停機的日子是 0.5%」,由這筆紀錄可以反推出每台設備的故障率(5% 和 10%)。
實際的資料往往只留下「組合後的結果」,所以從中推估個別機率的想法,廣泛用於設備管理與流程改善的分析。
反推雙重檢查機制的實力(品質管理、校對)
2 個人一起檢查文件,過去的紀錄是「至少一人發現錯誤的機率是 90%,兩人都發現的機率是 40%」時,可以反推出各自的發現率(80% 和 50%)。(這是把兩人的檢查視為互相獨立時的模型計算。)
不必個別測驗,也能從過去的紀錄估算每位檢查人員的實力,因此可以用數字為依據,重新檢討分工(誰和誰搭配、1 個人是否就足夠)。
由普及率的調查資料解讀個別比例
由「擁有智慧型手機或平板至少一種的人占 85%,兩種都有的人占 35%」這樣的調查結果,可以反推出各自的普及率(70% 和 50%)。(這是把兩者的擁有情況視為互相獨立時的概算。)
公開的統計有時只列出「至少一個」「兩個都」這類彙整後的數字,可以用這個方法從中拆出想知道的個別比例。
公式與圖示
兩個獨立事件必定成立的關係式
圖示
數學寫法
(一般的數學式)
\(P(A \cap B)\)
\(=\)
\(P(A)\)
\(\times\)
\(P(B)\)
\(P(A \cup B)\)
\(=\)
\(P(A)\)
\(+\)
\(P(B)\)
\(-\)
\(P(A)\,P(B)\)
文字寫法
(把符號換成文字的公式)
③
\(P(A \cap B)\):兩個都發生的機率
\(=\)
①
\(P(A)\):A 發生的機率
\(\times\)
②
\(P(B)\):B 發生的機率
④
\(P(A \cup B)\):至少一個發生的機率
\(=\)
\(P(A)\):A 發生的機率
\(+\)
\(P(B)\):B 發生的機率
\(-\)
兩個都發生的機率(相乘的部分)
用文字讀公式
①
把
\(P(A)\):A 發生的機率
②
乘以
\(P(B)\):B 發生的機率
,
③
就得到
\(P(A \cap B)\):兩個都發生的機率
(第 1 個式子)。
④
把兩個機率相加,再減去相乘的部分(兩個都發生的機率),就得到
\(P(A \cup B)\):至少一個發生的機率
(第 2 個式子)。
兩個獨立事件一定會滿足這 2 個關係。所以只要知道 8 個機率中的任意 2 個,就能沿著這些關係倒推回去,求出其餘全部。
簡單範例
已知「兩個都發生的機率」是 0.12、「至少一個發生的機率」是 0.58 時,找出「相加為 0.7、相乘為 0.12 的兩個數」,就能求出 P(A) 和 P(B)
兩個都發生(0.12)
\(=\)
\(P(A)\):A 發生(?)
\(\times\)
\(P(B)\):B 發生(?)
\(P(A) + P(B) = 0.58 + 0.12 = 0.7\)
\(P(A) \times P(B) = 0.12\)
\(\Rightarrow\ P(A) = 0.3,\ \ P(B) = 0.4\)
思考重點
為什麼只要 2 個值就能知道其餘全部?因為 8 個機率都能用 \(P(A)\) 和 \(P(B)\) 的式子表示,想求的數(未知數)實際上只有這 2 個。有 2 個未知數時,只要有 2 個線索(方程式)就能解出來。這和聯立方程式「有 2 個 \(x\) 和 \(y\) 的式子就能解」是同樣的道理。
不過,像「兩個都發生的機率」和「至少一個發生的機率」,即使 A 和 B 互換,值也不會改變,所以由這 2 個反推時無法分辨哪一個是 A,可能會得到 A、B 互換的 2 組解。另外,如果輸入互相矛盾,例如「兩個都發生的機率」比「至少一個發生的機率」還大,就不存在符合條件的機率,結果會是「無解」。
上圖右邊的正方形,是把全體看成面積 1 的正方形,寬取 \(P(A)\)、高取 \(P(B)\)。左下角長方形的面積 \(P(A) \times P(B)\) 就是「兩個都發生的機率」,這就是第 1 個式子用乘法的原因。左邊的文氏圖用來表示「是哪一部分」,兩個圓合起來的部分就是「至少一個發生的機率」(圓的面積和機率的大小並不對應)。
8 個機率全都只由 \(P(A)\) 和 \(P(B)\) 這 2 個值決定。所以反過來,只要知道其中任意 2 個,就能反推出其餘全部。
符號與用語解說
符號
| \(P(A)\) | P of A | 事件 A 發生的機率。P 是英文「機率」Probability 的第一個字母。 |
| \(A'\) | A prime(餘事件) | 表示「A 不發生」這個事件(餘事件),也寫成 \(A^c\) 或 \(\overline{A}\)。可用 \(P(A') = 1 - P(A)\) 求出。 |
| \(\cap\) | 交集 | 表示「且」的符號。\(A \cap B\) 是「A 與 B 都發生」這個事件,在文氏圖中就是兩個圓重疊的部分。 |
| \(\cup\) | 聯集 | 表示「或」的符號。\(A \cup B\) 是「A 與 B 至少一個發生」這個事件,在文氏圖中就是兩個圓合起來的全部範圍。 |
| \(\Delta\) | delta(對稱差) | 表示「只有其中一個」的符號。\(A \Delta B\) 是「A、B 只有其中一個發生(不會兩個都發生)」這個事件。 |
用語
| 事件 | 像「擲骰子擲出 6 點」「明天會下雨」這樣,會發生或不會發生的事情。數學上把這種事情稱為「事件」,並取 A、B 等名稱來處理。 |
| 獨立 | 一方的結果不會影響另一方發生的機率。「抽籤後不放回、再抽 1 次」時,第 1 次的結果會改變第 2 次的機率,所以不是獨立的。這個頁面的反推只適用於獨立的情況。 |
| 餘事件 | 指該事件「不發生」這個相反的事件。如果發生的機率是 0.3,不發生的機率(餘事件的機率)就是 \(1 - 0.3 = 0.7\)。 |
| 聯立方程式 | 想求的數(未知數)有 2 個時,把 2 個關係式(方程式)組合起來,求出兩者的值的方法。這個頁面的反推,就是在解以 \(P(A)\) 和 \(P(B)\) 為未知數的聯立方程式。 |
| 一元二次方程式 | 求「相加為 \(S\)、相乘為 \(P\) 的兩個數」的問題,會變成一元二次方程式。這個頁面的反推,大多最後都會歸結成這個形式。 |
| 公式解 | 能按步驟解出一元二次方程式的公式 \(x = \dfrac{-b \pm \sqrt{b^2 - 4ac}}{2a}\)。這個頁面的反推最後得到的一元二次方程式,就是用它來解。 |
| 判別式 | 公式解根號裡面的部分 \(b^2 - 4ac\)。正數時有 2 個解,0 時恰好 1 個解,負數時可以判定「沒有符合的數(無實數解)」。這個頁面顯示「無解」的最常見情況,就是判別式為負數。 |
建議先了解的基礎知識
為了讓您「真正理解意義」地使用這個頁面的計算,這裡整理了建議事先理解的基礎知識。
| 機率的基礎(國中九年級,14~15 歲) |
|
| 兩個獨立事件的機率(本網站的姊妹頁面) |
|
| 一元一次方程式(國中七年級,12~13 歲) |
|
| 一元二次方程式與公式解(國中八年級,13~14 歲) |
|
用 Excel 計算的方法
把下方表格整個複製,貼到 Excel 的 A1 儲存格就能直接使用。
由「兩個都發生的機率」和「至少一個發生的機率」反推 P(A) 和 P(B) 的表格
| 兩個都發生的機率 P(A∩B) | 0.12 |
| 至少一個發生的機率 P(A∪B) | 0.58 |
| P(A)(2 個解中較小的) | =(B1+B2-SQRT((B1+B2)^2-4*B1))/2 |
| P(B)(2 個解中較大的) | =(B1+B2+SQRT((B1+B2)^2-4*B1))/2 |
貼上後,B1 和 B2 是輸入欄,B3 和 B4 會顯示反推出的 P(A) 和 P(B)。
這是利用 P(A) + P(B) = P(A∪B) + P(A∩B)、P(A) × P(B) = P(A∩B) 的關係,用一元二次方程式的公式解求解。
SQRT 是計算根號(平方根)的函數。如果輸入的值讓根號裡面變成負數,就是「無解」,會顯示錯誤(#NUM!)。
其他組合(例如已知 P(A) 和 P(A∪B) 的情況),請參考這個頁面的計算機顯示的「計算過程」。
這是利用 P(A) + P(B) = P(A∪B) + P(A∩B)、P(A) × P(B) = P(A∩B) 的關係,用一元二次方程式的公式解求解。
SQRT 是計算根號(平方根)的函數。如果輸入的值讓根號裡面變成負數,就是「無解」,會顯示錯誤(#NUM!)。
其他組合(例如已知 P(A) 和 P(A∪B) 的情況),請參考這個頁面的計算機顯示的「計算過程」。
用 Google 試算表計算的方法
把下方表格整個複製,貼到 Google 試算表的 A1 儲存格就能直接使用。
由「兩個都發生的機率」和「至少一個發生的機率」反推 P(A) 和 P(B) 的表格
| 兩個都發生的機率 P(A∩B) | 0.12 |
| 至少一個發生的機率 P(A∪B) | 0.58 |
| P(A)(2 個解中較小的) | =(B1+B2-SQRT((B1+B2)^2-4*B1))/2 |
| P(B)(2 個解中較大的) | =(B1+B2+SQRT((B1+B2)^2-4*B1))/2 |
可以直接使用和 Excel 相同的公式。把表格整個複製、貼到 A1 儲存格,再把 B1 和 B2 的數值改成自己的值即可。
用 Python 計算的方法
import math
p_both = 0.12 # 兩個都發生的機率 P(A∩B)
p_at_least_one = 0.58 # 至少一個發生的機率 P(A∪B)
sum_of_pa_pb = p_at_least_one + p_both # P(A) + P(B)
product_of_pa_pb = p_both # P(A) × P(B)
discriminant = sum_of_pa_pb ** 2 - 4 * product_of_pa_pb # 一元二次方程式的判別式
if discriminant < 0:
print("無解(不存在符合這個組合的機率)")
else:
sqrt_of_discriminant = math.sqrt(discriminant)
p_a = (sum_of_pa_pb - sqrt_of_discriminant) / 2
p_b = (sum_of_pa_pb + sqrt_of_discriminant) / 2
print(f"P(A) = {p_a}, P(B) = {p_b}")
這是已知「兩個都發生的機率」和「至少一個發生的機率」時的範例。把開頭的 2 個值改掉後執行即可。答案有 2 組時,把 P(A) 和 P(B) 互換就是另一組解。
用 LaTeX 等數學式語言的寫法(可直接複製)
兩個獨立事件必定成立的關係式
P(A∩B) = P(A) × P(B), P(A∪B) = P(A) + P(B) − P(A)×P(B)
P(A \cap B) = P(A)\,P(B), \quad P(A \cup B) = P(A) + P(B) - P(A)\,P(B)
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>P</mi><mo>(</mo><mi>A</mi><mo>∩</mo><mi>B</mi><mo>)</mo>
<mo>=</mo>
<mi>P</mi><mo>(</mo><mi>A</mi><mo>)</mo>
<mi>P</mi><mo>(</mo><mi>B</mi><mo>)</mo>
<mo>,</mo>
<mspace width="1em"></mspace>
<mi>P</mi><mo>(</mo><mi>A</mi><mo>∪</mo><mi>B</mi><mo>)</mo>
<mo>=</mo>
<mi>P</mi><mo>(</mo><mi>A</mi><mo>)</mo>
<mo>+</mo>
<mi>P</mi><mo>(</mo><mi>B</mi><mo>)</mo>
<mo>−</mo>
<mi>P</mi><mo>(</mo><mi>A</mi><mo>)</mo>
<mi>P</mi><mo>(</mo><mi>B</mi><mo>)</mo>
</mrow>
</math>
P(A nn B) = P(A) P(B), P(A uu B) = P(A) + P(B) - P(A) P(B)
Solve[{pa*pb == 0.12, pa + pb - pa*pb == 0.58}, {pa, pb}]
solve({pa*pb = 0.12, pa + pb - pa*pb = 0.58}, {pa, pb});
syms pa pb; sol = solve(pa*pb == 0.12, pa + pb - pa*pb == 0.58, pa, pb);
P(A∩B) = P(A) × P(B), P(A∪B) = P(A) + P(B) - P(A)×P(B)
請 ChatGPT 幫忙計算的方法
你是機率計算的助理。請務必實際執行 Python 程式碼來進行下列計算,並只以執行結果的數值作為回答的依據(請不要用心算或猜測回答)。 已知兩個獨立事件 A、B,兩個都發生的機率 P(A∩B) = 0.12,至少一個發生的機率 P(A∪B) = 0.58。 請求出 P(A) 和 P(B),並進一步求出各自不發生的機率、只有其中一個發生的機率 P(AΔB),以及兩個都不發生的機率。 如果有 2 組解,請兩組都列出。請以表格列出計算時使用的公式與執行結果。
使用方法
-
1輸入數值在輸入欄中輸入要計算的數值
-
2計算按下「計算」按鈕
-
3查看結果計算結果會立即顯示。計算的思路和公式的解說,也都能在同一個頁面查看
DataChef 的特色
簡單又免費
免費且無使用次數限制
不需專業知識,操作直覺又簡單
不需專業知識,操作直覺又簡單
免註冊會員
開啟頁面即可立即使用
無須登錄任何個人資料
無須登錄任何個人資料
安全又安心
通訊全程高度加密
按下「下載」後自動刪除檔案
按下「下載」後自動刪除檔案
高速
顯示與轉換都快速順暢,毫無等待壓力
無浮水印
沒有浮水印
無須標註來源出處
無須標註來源出處
可商業使用
可免費用於商業用途
亦無須事先取得商用授權
亦無須事先取得商用授權