การคำนวณ p-value จาก t-statistic

Hypothesis Testing in R

Richie Cotton

Data Evangelist at DataCamp

การแจกแจงแบบ t

  • ค่าสถิติทดสอบ t เป็นไปตามการแจกแจงแบบ t
  • การแจกแจงแบบ t มีพารามิเตอร์ที่เรียกว่า degrees of freedom หรือ df
  • การแจกแจงแบบ t มีลักษณะคล้ายการแจกแจงปกติ แต่มีหางที่อ้วนกว่า

กราฟแสดง PDF ของการแจกแจงปกติมาตรฐานเปรียบเทียบกับการแจกแจงแบบ t ที่มี 1 degree of freedom โดยการแจกแจงแบบ t มีหางอ้วนกว่าและยอดเตี้ยกว่า

Hypothesis Testing in R

Degrees of freedom

  • เมื่อ degrees of freedom เพิ่มขึ้น การแจกแจงแบบ t จะเข้าใกล้การแจกแจงปกติมากขึ้น
  • การแจกแจงปกติคือการแจกแจงแบบ t ที่มี degrees of freedom เป็นอนันต์
  • Degrees of freedom คือจำนวนสูงสุดของค่าที่เป็นอิสระเชิงตรรกะในกลุ่มตัวอย่าง

กราฟแสดง PDF ของการแจกแจงปกติมาตรฐานเปรียบเทียบกับการแจกแจงแบบ t ที่มี degrees of freedom ต่างๆ เมื่อ degrees of freedom เพิ่มขึ้น หางจะแคบลงและยอดจะสูงขึ้น ใกล้เคียงกับการแจกแจงปกติมากขึ้น

Hypothesis Testing in R

การคำนวณ degrees of freedom

  • สมมติว่าชุดข้อมูลมีการสังเกต 5 ค่าที่เป็นอิสระต่อกัน
  • สี่ค่าแรกคือ 2, 6, 8 และ 5
  • ทราบว่าค่าเฉลี่ยของกลุ่มตัวอย่างเท่ากับ 5
  • ค่าสุดท้ายไม่เป็นอิสระอีกต่อไป ต้องเท่ากับ 4
  • จึงมี degrees of freedom ทั้งหมด 4
  • $df = n_{child} + n_{adult} - 2$
Hypothesis Testing in R

สมมติฐาน

$H_{0}$: ค่าชดเชยเฉลี่ย (หน่วย USD) เท่ากัน สำหรับผู้ที่เริ่มเขียนโค้ดตั้งแต่เด็กและผู้ที่เริ่มเขียนโค้ดเมื่อโตแล้ว

$H_{A}$: ค่าชดเชยเฉลี่ย (หน่วย USD) สูงกว่า สำหรับผู้ที่เริ่มเขียนโค้ดตั้งแต่เด็กเมื่อเทียบกับผู้ที่เริ่มเมื่อโตแล้ว

 

ใช้ การทดสอบด้านขวา (right-tailed test)

Hypothesis Testing in R

ระดับนัยสำคัญ

$\alpha = 0.1$

ถ้า $p \le \alpha$ ให้ปฏิเสธ $H_{0}$

Hypothesis Testing in R

การคำนวณ p-value: สัดส่วนเดียวเทียบกับค่าคงที่

p_value <- pnorm(z_score, lower.tail = FALSE)
Hypothesis Testing in R

การคำนวณ p-value: ค่าเฉลี่ยสองกลุ่มที่แตกต่างกัน

numerator <- xbar_child - xbar_adult
denominator <- sqrt(s_child ^ 2 / n_child + s_adult ^ 2 / n_adult)
t_stat <- numerator / denominator
2.4046
degrees_of_freedom <- n_child + n_adult - 2
2578
  • ค่า standard error ของ test statistic ใช้การประมาณ (ไม่ใช่ bootstrapping)
  • ใช้ CDF ของการแจกแจงแบบ t แทน CDF ของการแจกแจงปกติ
p_value <- pt(t_stat, df = degrees_of_freedom, lower.tail = FALSE)
0.008130
Hypothesis Testing in R

มาฝึกกันเถอะ!

Hypothesis Testing in R

Preparing Video For Download...