วิธีทำการทดสอบ f ใน python
การทดสอบ F ใช้เพื่อทดสอบว่าความแปรปรวนของประชากรทั้งสองเท่ากันหรือไม่ สมมติฐานว่างและทางเลือกของการทดสอบมีดังนี้:
H 0 : σ 1 2 = σ 2 2 (ความแปรปรวนของประชากรเท่ากัน)
H 1 : σ 1 2 ≠ σ 2 2 (ความแปรปรวนของประชากร ไม่ เท่ากัน)
บทช่วยสอนนี้จะอธิบายวิธีดำเนินการทดสอบ F ใน Python
ตัวอย่าง: F-Test ใน Python
สมมติว่าเรามีสองตัวอย่างต่อไปนี้:
x = [18, 19, 22, 25, 27, 28, 41, 45, 51, 55] y = [14, 15, 15, 17, 18, 22, 25, 25, 27, 34]
เราสามารถใช้ฟังก์ชันต่อไปนี้เพื่อทำการทดสอบ F เพื่อพิจารณาว่าประชากรทั้งสองกลุ่มตัวอย่างเหล่านี้มาจากความแปรปรวนเท่ากันหรือไม่:
import numpy as np #define F-test function def f_test(x, y): x = np.array(x) y = np.array(y) f = np.var(x, ddof=1)/np.var(y, ddof=1) #calculate F test statistic dfn = x.size-1 #define degrees of freedom numerator dfd = y.size-1 #define degrees of freedom denominator p = 1-scipy.stats.f.cdf(f, dfn, dfd) #find p-value of F test statistic return f,p #perform F-test f_test(x, y) (4.38712, 0.019127)
สถิติการทดสอบ F คือ 4.38712 และค่า p ที่สอดคล้องกันคือ 0.019127 เนื่องจากค่า p นี้น้อยกว่า 0.05 เราจึงทิ้งสมมุติฐานว่าง ซึ่งหมายความว่า เรามีหลักฐานเพียงพอที่จะบอกว่าความแปรปรวนประชากรทั้งสอง ไม่ เท่ากัน
ความคิดเห็น
- สถิติการทดสอบ F คำนวณเป็น s 1 2 / s 2 2 ตามค่าเริ่มต้น numpy.var จะคำนวณความแปรปรวนของประชากร ในการคำนวณความแปรปรวนตัวอย่าง เราต้องระบุ ddof=1
- ค่า p สอดคล้องกับ 1 – cdf ของการแจกแจง F โดยมีองศาอิสระในตัวเศษ = n 1 -1 และองศาอิสระในตัวส่วน = n 2 -1
- ฟังก์ชันนี้จะใช้งานได้ก็ต่อเมื่อความแปรปรวนของกลุ่มตัวอย่างแรกมากกว่าความแปรปรวนของกลุ่มตัวอย่างที่สอง ดังนั้นให้ตั้งค่าทั้งสองตัวอย่างให้ทำงานกับฟังก์ชัน
เมื่อใดควรใช้การทดสอบ F
โดยทั่วไปแล้ว F-test ใช้เพื่อตอบคำถามข้อใดข้อหนึ่งต่อไปนี้:
1. สองตัวอย่างมาจากประชากรที่มีความแปรปรวนเท่ากันหรือไม่
2. การบำบัดหรือกระบวนการใหม่ช่วยลดความแปรปรวนของการบำบัดหรือกระบวนการในปัจจุบันหรือไม่?
ที่เกี่ยวข้อง: วิธีทำการทดสอบ F ใน R