วิธีทำการทดสอบ brown-forsythe ใน python
การวิเคราะห์ความแปรปรวนแบบทางเดียว ใช้เพื่อพิจารณาว่ามีความแตกต่างที่มีนัยสำคัญระหว่างค่าเฉลี่ยของกลุ่มอิสระสามกลุ่มขึ้นไปหรือไม่
ข้อสันนิษฐาน ประการหนึ่งของการวิเคราะห์ความแปรปรวนทางเดียวก็คือความแปรปรวนของประชากรที่ใช้ สุ่มตัวอย่าง เท่ากัน
วิธีทดสอบที่พบบ่อยที่สุดวิธีหนึ่งคือการใช้ การทดสอบ Brown-Forsythe ซึ่งเป็นการทดสอบทางสถิติที่ใช้ สมมติฐาน ต่อไปนี้:
- H 0 : ความแปรปรวนระหว่างประชากรเท่ากัน
- HA : ความแตกต่างระหว่างประชากรไม่เท่ากัน
หาก ค่า p ของการทดสอบต่ำกว่าระดับนัยสำคัญที่กำหนด (เช่น α = 0.05) เราจะปฏิเสธสมมติฐานว่างและสรุปว่าความแปรปรวนไม่เท่ากันระหว่างประชากรที่แตกต่างกัน
บทช่วยสอนนี้ให้ตัวอย่างทีละขั้นตอนของวิธีดำเนินการทดสอบ Brown-Forsythe ใน Python
ขั้นตอนที่ 1: ป้อนข้อมูล
สมมติว่านักวิจัยต้องการทราบว่าปุ๋ยสามชนิดที่แตกต่างกันนำไปสู่การเจริญเติบโตของพืชในระดับที่แตกต่างกันหรือไม่
พวกเขาสุ่มเลือกพืชที่แตกต่างกัน 30 ต้นและแบ่งออกเป็นสามกลุ่ม กลุ่มละ 10 ต้น โดยใช้ปุ๋ยที่แตกต่างกันในแต่ละกลุ่ม หลังจากผ่านไปหนึ่งเดือน พวกเขาจะวัดความสูงของต้นแต่ละต้น
ตารางต่อไปนี้แสดงความสูงของต้นไม้ในแต่ละกลุ่มจากสามกลุ่ม:
group1 = [7, 14, 14, 13, 12, 9, 6, 14, 12, 8] group2 = [15, 17, 13, 15, 15, 13, 9, 12, 10, 8] group3 = [6, 8, 8, 9, 5, 14, 13, 8, 10, 9]
ขั้นตอนที่ 2: สรุปข้อมูล
ก่อนที่จะทำการทดสอบบราวน์-ฟอร์ไซธ์ เราสามารถ คำนวณความแปรปรวนของการวัดค่าพืชในแต่ละกลุ่มได้:
#import numpy import numpy as np #calculate variance of plant measurements in each group print (np. var (group1), np. var (group2), np. var (group3)) 8.69 7.81 7.0
เราจะเห็นได้ว่าความแปรปรวนระหว่างกลุ่มต่างกัน แต่หากต้องการทราบว่าความแตกต่างเหล่านี้มี นัยสำคัญทางสถิติ หรือไม่ เราจึงทำการทดสอบบราวน์-ฟอร์ไซธ์ได้
ขั้นตอนที่ 3: ทำการทดสอบ Brown-Forsythe
ในการทำการทดสอบ Brown-Forsythe ใน Python เราสามารถใช้ฟังก์ชัน scipy.stats.levene() และระบุว่าจุดศูนย์กลางเป็น ค่ามัธยฐาน :
import scipy.stats as stats
stats. levene (group1, group2, group3, center=' median ')
LeveneResult(statistic=0.17981072555205047, pvalue=0.8364205218185946)
จากผลลัพธ์เราสามารถสังเกตได้ดังต่อไปนี้:
- สถิติการทดสอบ: 0.1798
- ค่า p: 0.8364
ค่า p ของการทดสอบมากกว่า 0.05 ดังนั้นเราจึงไม่สามารถปฏิเสธสมมติฐานว่างของการทดสอบได้
ความแตกต่างในความแปรปรวนระหว่างกลุ่มไม่มีนัยสำคัญทางสถิติ
ขั้นตอนถัดไป
หากเราไม่สามารถปฏิเสธสมมติฐานว่างของการทดสอบบราวน์-ฟอร์ไซธ์ เราก็จะสามารถดำเนินการวิเคราะห์ความแปรปรวนแบบทางเดียวกับข้อมูลได้
อย่างไรก็ตาม หากเราปฏิเสธสมมติฐานว่าง ก็แสดงว่าไม่เป็นไปตามสมมติฐานของความเท่าเทียมกันของความแปรปรวน ในกรณีนี้ เรามีสองทางเลือก:
1. ทำการวิเคราะห์ความแปรปรวนทางเดียวต่อไป
ปรากฎว่าการวิเคราะห์ความแปรปรวนแบบทางเดียวนั้นแท้จริงแล้วมีความทนทานต่อความแปรปรวนที่ไม่เท่ากัน ตราบใดที่ความแปรปรวนที่ใหญ่ที่สุดไม่เกิน 4 เท่าของความแปรปรวนที่น้อยที่สุด
ในขั้นตอนที่ 2 ของตัวอย่างข้างต้น เราพบว่าความแปรปรวนน้อยที่สุดคือ 7.0 และความแปรปรวนที่ใหญ่ที่สุดคือ 8.69 ดังนั้นอัตราส่วนของความแปรปรวนที่ใหญ่ที่สุดต่อน้อยที่สุดคือ 8.69 / 7.0 = 1.24
เนื่องจากค่านี้น้อยกว่า 4 เราจึงสามารถดำเนินการกับการวิเคราะห์ความแปรปรวนแบบทางเดียวได้ แม้ว่าการทดสอบ Brown-Forsythe จะระบุว่าความแปรปรวนไม่เท่ากันก็ตาม
2. ทำการทดสอบครัสคัล-วาลลิส
หากอัตราส่วนของความแปรปรวนที่ใหญ่ที่สุดต่อความแปรปรวนน้อยที่สุดมากกว่า 4 เราอาจเลือกที่จะทำการ ทดสอบครัสคาล-วาลลิส แทน นี่ถือเป็นความเทียบเท่าแบบไม่มีพารามิเตอร์ของการวิเคราะห์ความแปรปรวนแบบทางเดียว
คุณสามารถดูตัวอย่างการทดสอบ Kruskal-Wallis ใน Python ทีละขั้นตอนได้ ที่นี่