Рандомизированная полная блочная конструкция

#r #random #data-science

Вопрос:

Я пытаюсь выполнить «рандомизированный полный дизайн блока» с 3 перестановками в R. Я провожу эксперимент с 9 обработками (3 обработки удобрениями и 3 обработками пестицидами объединены) и 6 повторениями каждой, поэтому я выбрал 6 блоков. В пределах блока обработка допускается один раз для каждой договоренности, и каждому отдельному горшку разрешается проходить только один раз в пределах блока по всем договоренностям. Например: C_p Min_1 может быть в блоке 1 в первый раз, но впоследствии не может вернуться в блок 1 снова. В то же время никакая другая копия этого лечения ( C_p Min_2 C_p Min_6 ) не может находиться в том же блоке, C_p Min_1 что и . Мой дизайн блока представляет собой растр размером 6 х 9, где блок представляет собой растр размером 3 х 3 в квадрате:

изображение 3x3 x 2 x 3 экспериментальный проект

Что я сделал:

 library(agricolae)
pesticide <- factor(rep(c("C_p", "Bio", "Syn"), each = 3))
fertilizer <- factor(rep(c("C_f", "Org", "Min"), times = 3))

treatments <- data.frame(fertilizer, pesticide)
treatments_combined <- paste(treatments$fertilizer, " ", treatments$pesticide)

design.rcbd(trt=treatments_combined, r=6, randomization = TRUE, first=TRUE)$sketch
 

Это приводит к:

       [,1]        [,2]        [,3]        [,4]        [,5]        [,6]        [,7]        [,8]        [,9]       
[1,] "Org   C_p" "Org   Syn" "C_f   Syn" "Min   Syn" "C_f   Bio" "Min   C_p" "Org   Bio" "Min   Bio" "C_f   C_p"
[2,] "Min   Bio" "Min   Syn" "Min   C_p" "C_f   Bio" "Org   Syn" "C_f   C_p" "Org   C_p" "C_f   Syn" "Org   Bio"
[3,] "Org   Syn" "C_f   Bio" "C_f   Syn" "Org   Bio" "Org   C_p" "Min   C_p" "C_f   C_p" "Min   Syn" "Min   Bio"
[4,] "C_f   Bio" "Min   Bio" "Org   C_p" "C_f   C_p" "C_f   Syn" "Min   Syn" "Min   C_p" "Org   Bio" "Org   Syn"
[5,] "Org   C_p" "Org   Bio" "C_f   C_p" "C_f   Syn" "C_f   Bio" "Min   Bio" "Min   C_p" "Min   Syn" "Org   Syn"
[6,] "C_f   Syn" "C_f   C_p" "Min   Bio" "Org   Syn" "Org   Bio" "Min   C_p" "Org   C_p" "C_f   Bio" "Min   Syn"
 

Так что однажды я получил то, что хотел.
Теперь я хочу переставить их 3 раза. Как я могу это сделать, чтобы мои требования сверху были выполнены?

Ответ №1:

Я считаю, что если вы просто повторно запустите design.rcbd() функцию, вы получите новую рандомизацию. (Функция имеет seed аргумент, если по какой-то причине вы хотите исправить рандомизацию, чтобы повторно получать один и тот же результат.)

 set.seed(101)  ## for replicability in the future
designs <- replicate(4, simplify=FALSE,
     design.rcbd(trt=treatments_combined, r=6, 
                 randomization = TRUE, first=TRUE)$sketch)
 

Это даст вам список из четырех «эскизов», которые вы можете получить designs[[1]] в виде designs[[2]] , и т.д.

В качестве альтернативы вы можете сохранить весь дизайн, оставив $sketch :

 designs <- replicate(4, simplify=FALSE,
     design.rcbd(trt=treatments_combined, r=6, 
                 randomization = TRUE, first=TRUE))
 

Теперь используйте designs[[1]]$sketch , чтобы получить эскиз дизайна для дизайна 1 и designs[[1]]$book получить «полевую книгу», которая, я думаю, вам нужна для получения подробной информации об отдельных горшках …

   plots block treatments_combined
1    101     1           C_f   C_p
2    102     1           Org   C_p
3    103     1           Min   C_p
...
 

Один из способов получения информации о конкретной комбинации лечения:

 b <- designs[[1]]$book
dplyr::filter(b, treatments_combined == "Min   C_p")
  plots block treatments_combined
1   103     1           Min   C_p
2   207     2           Min   C_p
3   303     3           Min   C_p
4   404     4           Min   C_p
5   503     5           Min   C_p
6   608     6           Min   C_p
> 
 

Комментарии:

1. Большое спасибо за ваш быстрый ответ. Это выглядит великолепно. Есть ли способ перечислить все банки? Мне нужно уметь отличать их друг от друга, так как через определенное время я буду физически перемещать горшки в их новое положение. Для каждой обработки, например «C_p Min», существует 6 повторов. Итак, от C_p Min_1 до C_p Min_6, и мне нужно знать, что куда идет. Спасибо!