พื้นฐานความน่าจะเป็นด้วย Python
Alexander A. Ramírez M.
CEO @ Synergy Vision
ค่าคาดหวัง: ผลรวมของผลลัพธ์ที่เป็นไปได้ โดยถ่วงน้ำหนักด้วยความน่าจะเป็น
$$ E(X) = \sum_{i=1}^{k} x_ip_i = x_1p_1 + x_2p_2 + \cdots + x_kp_k $$
ค่าคาดหวังของตัวแปรสุ่มแบบไม่ต่อเนื่องคือผลรวมของผลลัพธ์ที่เป็นไปได้ถ่วงน้ำหนักด้วยความน่าจะเป็น
$$ E(X) = \sum_{i=1}^{k} x_ip_i = x_1p_1 + x_2p_2 + \cdots + x_kp_k $$
สำหรับการโยนเหรียญ:
$$ E(X) = \sum_{i=1}^{2} x_ip_i = x_1p_1 + x_2p_2 = \color{red}{0\times (1-p)} + 1\times p = p $$
ค่าคาดหวังของตัวแปรสุ่มแบบไม่ต่อเนื่องคือผลรวมของผลลัพธ์ที่เป็นไปได้ถ่วงน้ำหนักด้วยความน่าจะเป็น
$$ E(X) = \sum_{i=1}^{k} x_ip_i = x_1p_1 + x_2p_2 + \cdots + x_kp_k $$
สำหรับการโยนเหรียญ:
$$ E(X) = \sum_{i=1}^{2} x_ip_i = x_1p_1 + x_2p_2 = 0\times (1-p) + \color{red}{1\times p} = p $$
$x_i$ แต่ละตัวคือผลลัพธ์จากการทดลองหนึ่งครั้ง (เช่น การโยนเหรียญ ได้ค่า 0 หรือ 1)
$$ \bar{X} = \frac{1}{n}\sum_{i=1}^{n} x_i = \frac{1}{n}(x_1+x_2+\cdots +x_n) $$
ใน Python ใช้ฟังก์ชัน scipy.stats.describe() เพื่อหาค่าเฉลี่ยเลขคณิต
from scipy.stats import describe
describe([0,1]).mean
0.5



ความแปรปรวนคือตัววัดการกระจายตัวของข้อมูล
คือค่าคาดหวังของกำลังสองของส่วนเบี่ยงเบนจากค่าคาดหวัง
$$ Var(X) = E[(X - E(X))^2] = \sum_{i=1}^{n}p_i \times (x_i-E(X))^2 $$
ใน Python ใช้ฟังก์ชัน scipy.stats.describe() เพื่อหาความแปรปรวนของตัวอย่าง
describe([0,1]).variance
0.5
สำหรับ $X\sim Binomial(n, p)$
$$ E(X) = n \times p $$
$$ Var(X) = n \times p \times (1-p) $$
ตัวอย่าง: $n=10$ และ $p=0.5$
ใน Python ใช้เมธอด binom.stats() เพื่อหาค่าคาดหวังและความแปรปรวน
binom.stats(n=10, p=0.5)
(array(5.), array(2.5))
ค่าคาดหวังและความแปรปรวนของการโยนเหรียญยุติธรรม 1 ครั้งคือเท่าใด?
binom.stats(n=1, p=0.5)
(array(0.5), array(0.25))
ค่าคาดหวังและความแปรปรวนของการโยนเหรียญลำเอียง 1 ครั้ง ที่มีความน่าจะเป็นสำเร็จ 30% คือเท่าใด?
binom.stats(n=1, p=0.3)
(array(0.3), array(0.21))
ค่าคาดหวังและความแปรปรวนของการโยนเหรียญยุติธรรม 10 ครั้งคือเท่าใด?
binom.stats(n=10, p=0.5)
(array(5.), array(2.5))
พื้นฐานความน่าจะเป็นด้วย Python