Напишите функцию, которая позволит пользователю
ввести вектор числовых значений,
без пропущенных значений «данные», и
вектор 1 и 2, представляющий
две разные группы, которые вы хотите сравнить.
«лечение». Количество 1 и 2 не обязательно должно быть одинаковым. Вы можете предположить
на данный момент, что лечение 2 имеет более высокое среднее
чем лечение 1.
Функция создаст рандомизацию
Распределение различий и сюжет их
в гистограмме. Будет использовать дистрибутив
рассчитать р-значение - вероятность того, что
наблюдаемая разница (или выше) может иметь
произошло случайно. Это напечатает наблюдаемое
разница и значение р, оба
округляется до 4 цифр с использованием текста:
«Наблюдаемая разница - хххх, а
р-значение хххх "
Используя эти два вектора, я определил, как получить различия, но не знаю, как поместить это в функцию и выполнить тест рандомизации.
dat<- c(1,4,2,5,2,4,8,6,9,7)
trt <- c(1,1,1,1,1,2,2,2,2,2)
Как найти наблюдаемую разницу:
obsdiff <- mean(dat[trt == 2]) - mean(dat[trt == 1])
Как «перетасовать процедуры»:
trtsh <- sample(trt, size = length(trt))
Как найти разницу смоделированной
в соответствии с нулевой гипотезой,
то есть разница в средствах для перемешивания
лечение 2 минус лечение 1:
simdiff <- mean(dat[trtsh == 2]) - mean(dat[trtsh == 1])
Значение p с использованием этих векторов должно быть 0,011
.