Я нахожусь в процессе случайного назначения процедур для эксперимента. У меня есть четыре сайта (Site1, ... Site4), где 12 экспериментальных единиц (например, 1 ... 12) дублируются четыре раза (например, 1 ... 4). Для каждой реплики я случайным образом назначил одну из трех обработок (например, trt1 ... trt3).
Теперь мне нужно назначить SecondTreatment (y или нет) для каждой обработки в реплике для каждой из моих Места. trt2 всегда должно быть «y», тогда как я хочу случайным образом назначить «y» половине trt1, а «n» - другой половине trt1, а затем сделать то же самое для trt3. Я должен дать мне для каждой реплики: trt2 с 4 "y", trt1 с 2 "n" и trt3 с 3 "n".
Мои данные выглядят так:
Site Experimental unit Replicate Treatment SecondTreatmentAssign (y/n)
Site1 1 1 trt1
Site1 2 1 trt2
Site1 3 1 trt3
Site1 4 1 trt3
Site1 5 1 trt1
Site1 6 1 trt2
Site1 7 1 trt3
Site1 8 1 trt2
Site1 9 1 trt1
Site1 10 1 trt1
Site1 11 1 trt3
Site1 12 1 trt2
Site1 1 2 trt2
Site1 2 2 trt3
Site1 3 2 trt1
Site1 4 2 trt2
Site1 5 2 trt1
Site1 6 2 trt3
Site1 7 2 trt2
Site1 8 2 trt2
Site1 9 2 trt1
Site1 10 2 trt2
Site1 11 2 trt1
Site1 12 2 trt3
Site1 1 3 trt2
Site1 2 3 trt1
Site1 3 3 trt3
Site1 4 3 trt3
Site1 5 3 trt2
Site1 6 3 trt1
Site1 7 3 trt3
Site1 8 3 trt2
Site1 9 3 trt1
Site1 10 3 trt1
Site1 11 3 trt3
Site1 12 3 trt2
Site1 1 4 trt3
Site1 2 4 trt2
Site1 3 4 trt1
Site1 4 4 trt3
Site1 5 4 trt2
Site1 6 4 trt1
Site1 7 4 trt3
Site1 8 4 trt1
Site1 9 4 trt2
Site1 10 4 trt1
Site1 11 4 trt2
Site1 12 4 trt3
. . . .
. . . .
. . . .
Site4 12 4 trt1
Я хотел бы иметь возможность сделать это так, чтобы эти назначения возвращались обратно в фрейм данных, чтобы мне не пришлось ничего перемещать вручную. Я все еще новичок в программировании и не знаю, как это сделать.
Спасибо!