Bagaimana melakukan tes friedman di r


Uji Friedman adalah alternatif nonparametrik untuk pengukuran berulang ANOVA. Hal ini digunakan untuk menentukan apakah terdapat perbedaan yang signifikan secara statistik antara rata-rata tiga kelompok atau lebih di mana subjek yang sama muncul di setiap kelompok.

Tutorial ini menjelaskan cara melakukan tes Friedman di R.

Contoh: tes Friedman di R

Untuk melakukan pengujian Friedman di R, kita dapat menggunakan fungsi friedman.test() , yang menggunakan sintaks berikut:

friedman.test (y, grup, blok)

Emas:

  • y: vektor nilai respons.
  • kelompok: vektor nilai yang menunjukkan “kelompok” tempat suatu observasi berada.
  • blok: vektor nilai yang menunjukkan variabel “pemblokiran”.

Fungsi ini menghasilkan statistik uji Chi-kuadrat dan nilai p yang sesuai. Jika nilai p berada di bawah tingkat signifikansi tertentu (pilihan umum adalah 0,10, 0,05, dan 0,01), maka terdapat cukup bukti bahwa rata-rata antar masing-masing kelompok tidak sama.

Untuk mengilustrasikan cara menggunakan fitur ini, kami akan membuat kumpulan data yang menunjukkan waktu reaksi lima pasien terhadap empat obat berbeda. Karena setiap pasien diukur pada masing-masing empat obat, kami akan menggunakan tes Friedman untuk menentukan apakah waktu reaksi rata-rata berbeda antar obat.

Pertama, kita akan membuat dataset:

 #create data
data <- data.frame(person = rep(1:5, each=4),
                   drug = rep(c(1, 2, 3, 4), times=5),
                   score = c(30, 28, 16, 34, 14, 18, 10, 22, 24, 20,
                             18, 30, 38, 34, 20, 44, 26, 28, 14, 30))

#view data
data

   person drug score
1 1 1 30
2 1 2 28
3 1 3 16
4 1 4 34
5 2 1 14
6 2 2 18
7 2 3 10
8 2 4 22
9 3 1 24
10 3 2 20
11 3 3 18
12 3 4 30
13 4 1 38
14 4 2 34
15 4 3 20
16 4 4 44
17 5 1 26
18 5 2 28
19 5 3 14
20 5 4 30

Selanjutnya kita akan melakukan uji Friedman dengan menggunakan skor sebagai variabel respon, obat sebagai variabel pengelompokan, dan orang sebagai variabel penghambat:

 #perform Friedman Test
friedman.test(y=data$score, groups=data$drug, blocks=data$person)

	Friedman rank sum test

data: data$score, data$drug and data$person
Friedman chi-squared = 13.56, df = 3, p-value = 0.00357

Statistik uji Chi-kuadrat adalah 13,56 dan nilai p yang sesuai adalah 0,00357 . Karena nilai p ini kurang dari 0,05, kita dapat menolak hipotesis nol yang menyatakan bahwa waktu respons rata-rata untuk keempat obat adalah sama. Kami memiliki cukup bukti untuk menyimpulkan bahwa jenis pengobatan yang digunakan menghasilkan perbedaan waktu respons yang signifikan secara statistik.

Meskipun uji Friedman memberi tahu kita apakah ada perbedaan waktu respons rata-rata antar obat, uji ini tidak memberi tahu kita secara spesifik obat mana yang memiliki waktu respons rata-rata berbeda. Untuk memahami hal ini, kita perlu melakukan pengujian post-hoc.

Untuk tes Friedman, tes post hoc yang sesuai adalah tes jumlah peringkat Wilcoxon berpasangan dengan koreksi Bonferroni, yang dapat diimplementasikan menggunakan sintaks berikut:

berpasangan.wilcox.test(data$skor, data$obat, p.adj = “bonf”)

Emas:

  • x: vektor respon
  • g: mengelompokkan vektor
  • p.adj: metode penyesuaian nilai p; pilihannya termasuk holm, hochberg, hommel, bonferroni, BH, BY, fdr dan none

Berikut adalah sintaks yang akan kita gunakan untuk contoh kita:

 #perform post-hoc tests
pairwise.wilcox.test(data$score, data$drug, p.adj = "bonf")
	Pairwise comparisons using Wilcoxon rank sum test 

data: data$score and data$drug 

  1 2 3    
2 1,000 - -    
3 0.449 0.210 -    
4 1,000 1,000 0.072

P value adjustment method: bonferroni 

Ini menghasilkan matriks yang menunjukkan nilai p untuk setiap tes jumlah peringkat Wilcoxon berpasangan. Kita dapat melihat bahwa satu-satunya kelompok obat yang memiliki perbedaan signifikan secara statistik sebesar 0,10 adalah kelompok 3 dan 4 ( p = 0,072 ).

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *