Cara melakukan tes brown-forsythe dengan python
ANOVA satu arah digunakan untuk menentukan ada atau tidaknya perbedaan yang signifikan antara rata-rata tiga atau lebih kelompok independen.
Salah satu asumsi ANOVA satu arah adalah varian populasi yang diambil sampelnya adalah sama.
Salah satu cara paling umum untuk mengujinya adalah dengan menggunakan uji Brown-Forsythe , yaitu uji statistik yang menggunakan asumsi berikut:
- H 0 : Varians antar populasi adalah sama.
- H A : Perbedaan antar populasi tidak sama.
Jika nilai p dari uji tersebut berada di bawah tingkat signifikansi tertentu (misalnya α = 0,05), maka kita menolak hipotesis nol dan menyimpulkan bahwa variansnya tidak sama antara populasi yang berbeda.
Tutorial ini memberikan contoh langkah demi langkah tentang cara melakukan pengujian Brown-Forsythe dengan Python.
Langkah 1: Masukkan datanya
Misalkan peneliti ingin mengetahui apakah tiga pupuk yang berbeda menyebabkan tingkat pertumbuhan tanaman yang berbeda.
Mereka secara acak memilih 30 tanaman berbeda dan membaginya menjadi tiga kelompok yang terdiri dari 10 tanaman, memberikan pupuk berbeda pada setiap kelompok. Setelah sebulan, mereka mengukur tinggi tiap tanaman.
Tabel berikut menunjukkan tinggi tanaman pada masing-masing kelompok:
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]
Langkah 2: Ringkas datanya
Sebelum melakukan uji Brown-Forsythe, kita dapat menghitung varian pengukuran tumbuhan pada setiap kelompok:
#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
Kita dapat melihat bahwa varians antar kelompok berbeda, namun untuk menentukan apakah perbedaan ini signifikan secara statistik , kita dapat melakukan uji Brown-Forsythe.
Langkah 3: Lakukan tes Brown-Forsythe
Untuk melakukan pengujian Brown-Forsythe dengan Python, kita dapat menggunakan fungsi scipy.stats.levene() dan menentukan bahwa pusatnya adalah median :
import scipy.stats as stats
stats. levene (group1, group2, group3, center=' median ')
LeveneResult(statistic=0.17981072555205047, pvalue=0.8364205218185946)
Dari hasilnya kita dapat mengamati hal-hal berikut:
- Statistik uji: 0,1798
- nilai p: 0,8364
Nilai p dari pengujian tersebut ternyata lebih besar dari 0,05, sehingga kita gagal menolak hipotesis nol dari pengujian tersebut.
Perbedaan varians antar kelompok tidak signifikan secara statistik.
Langkah selanjutnya
Jika kita gagal menolak hipotesis nol uji Brown-Forsythe, maka kita dapat melakukan ANOVA satu arah pada data tersebut.
Namun jika hipotesis nol ditolak, berarti asumsi persamaan varians tidak terpenuhi. Dalam hal ini kita mempunyai dua pilihan:
1. Tetap lakukan ANOVA satu arah.
Ternyata ANOVA satu arah sebenarnya kuat terhadap varian yang tidak sama selama varian terbesar tidak lebih besar dari 4 kali varian terkecil.
Pada langkah 2 contoh di atas, kita menemukan bahwa varian terkecil adalah 7,0 dan varian terbesar adalah 8,69. Jadi perbandingan varian terbesar dan terkecil adalah 8,69 / 7,0 = 1,24 .
Karena nilai ini kurang dari 4, kita dapat melanjutkan dengan ANOVA satu arah meskipun uji Brown-Forsythe menunjukkan bahwa variansnya tidak sama.
2. Lakukan tes Kruskal-Wallis
Jika rasio varian terbesar dan varian terkecil lebih besar dari 4, seseorang dapat memilih untuk melakukan uji Kruskal-Wallis . Hal ini dianggap setara nonparametrik dari ANOVA satu arah.
Anda dapat menemukan contoh langkah demi langkah pengujian Kruskal-Wallis dengan Python di sini .