我有一个随机分组设计实验,我们想测试10种治疗方法(8种基因型+2种对照(。
它的结构如下:
9个位点,在每个位点内,有4个块(重复(,在每个块内有10个图,在每个地块中,有144个特定治疗(基因型(的个体。
我想生成一个数据集如下:
注意:每个区块内的地块随机分配处理。
Site <- LETTERS[1:6]
Block <- LETTERS[1:4] ## For each Site
Plot <- paste(rep("P",10),seq(1,10,1),sep="_") ## For each Block
Trt <- c(LETTERS[1:8],rep("control",2)) ## 10 Treatments within each block
id <- seq(1,144,1) ## for each Plot
observation <- runif(n=144,min=1, max=4) ## repeated for each treatment, each block,and each site.
data.frame(Site,Block,Plot,Trt,id,observation)
知道这个代码会删除一个错误,id‘like拥有,对于同一个站点,所有块级别,对于相同的块,所有绘图级别及其相应的处理,对于相同绘图,所有id标签及其相应的观察。
非常感谢
我想您可能正在寻找expand.grid
:
Site <- LETTERS[1:6]
Block <- LETTERS[1:4] ## For each Site
Plot <- paste(rep("P",10),seq(1,10,1),sep="_") ## For each Block
data <- expand.grid(Site = Site, Block = Block, Plot = Plot)
data$Trt <- sample(c(LETTERS[1:8],paste0("control",1:2)), nrow(data), replace = TRUE)
data