Як виконати тест данна в r


Критерій Крускала-Уолліса використовується для визначення того, чи існує статистично значуща різниця між медіанами трьох або більше незалежних груп. Це вважається непараметричним еквівалентом одностороннього дисперсійного аналізу .

Якщо результати тесту Крускала-Уолліса є статистично значущими, тоді доцільно виконати тест Данна , щоб точно визначити, які групи відрізняються.

Цей підручник пояснює, як виконати тест Данна в R.

Приклад: тест Данна в R

Дослідник хоче знати, чи три ліки по-різному впливають на біль у спині. Тому він набирає 30 людей, які страждають від схожих болів у спині, і випадковим чином ділить їх на три групи, які отримують препарат А, препарат Б або препарат С. Через місяць після прийому препарату дослідник просить кожного оцінити свій біль у спині. шкала від 1 до 100, де 100 означає найсильніший біль.

Дослідник виконує тест Крускала-Уолліса, використовуючи рівень значущості 0,05, щоб визначити, чи є статистично значуща різниця між середніми показниками болю в спині в цих трьох групах.

У наступному коді показано, як створити фрейм даних у R і виконати тест Крускала-Уолліса:

 #make this example reproducible
set.seed(0)

#create data frame
data <- data.frame(drug = rep(c("A", "B", "C"), each = 10),
                   bread = c(runif(10, 40, 60),
                            runif(10, 45, 65),
                            runif(10, 55, 70)))

#view first six rows of data frame
head(data)

# drug pain
#1 A 57.93394
#2 A 45.31017
#3 A 47.44248
#4 A 51.45707
#5 A 58.16416
#6 A 44.03364

#perform Kruskal-Wallis Test
kruskal.test(pain ~ drug, data = data)

	Kruskal-Wallis rank sum test

data: pain by drug
Kruskal-Wallis chi-squared = 11.105, df = 2, p-value = 0.003879

Оскільки загальне значення p ( 0,003879 ) менше ніж 0,05, це означає, що існує статистично значуща різниця в рівнях болю між трьома препаратами. Тому ми можемо виконати тест Данна, щоб точно визначити, які препарати відрізняються.

У наступному коді показано, як виконати тест Данна в R за допомогою функції dunnTest() із бібліотеки FSA() :

 #loadlibrary
library(FSA)

#perform Dunn's Test with Bonferroni correction for p-values
dunnTest(pain ~ drug,
         data=data,
         method=" bonferroni ")

Dunn (1964) Kruskal-Wallis multiple comparison
  p-values adjusted with the Bonferroni method.

  Comparison Z P.unadj P.adj
1 A - B -0.8890009 0.374002602 1.000000000
2 A - C -3.2258032 0.001256197 0.003768591
3 B - C -2.3368023 0.019449464 0.058348393

Зверніть увагу, що ми вирішили використовувати поправку Бонферроні для p-значень кількох порівнянь, але інші можливі варіанти включають:

  • «сідак» (регулювання Сідака)
  • “holm” (регулювання холма)
  • “hs” (регулювання Холма-Сідака)
  • «bs» (коригування Бонферроні-Сідака)
  • “by” (коригування Бенджаміна-Єкутейлі)
  • “bh” ( процедура Бенджаміні-Хохберга )

При α = 0,05 препарати А і С є єдиними двома препаратами, які статистично суттєво відрізняються один від одного (скориговане p-значення = 0,003768 ).

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *