R语言 的随机区块设计
实验设计是统计学中方差分析的一部分。它们是预定义的算法,帮助我们分析实验单元中各组平均值之间的差异。 随机区块设计(RBD) 或随机完全区块设计 是ANOVA类型中的一部分。
随机区块设计
设计实验的三个基本原则是复制、阻断和随机化。在这种类型的设计中,阻断并不是算法的一部分。实验的样本是随机的,复制被分配到每个实验单元的特定区块。让我们考虑以下一些实验,并在R编程中实现实验。
实验1
在不同类型的农作物中测试新的肥料。作物被分为3个不同的类型(区块)。这些区块又被分为3种肥料,用于这些作物。这方面的数据如下。
在上面的图片中。
F1 – 肥料1,F2 – 肥料2,NF – 无肥料
农作物被分为3块(水稻、小麦和玉米)。然后,它们又被划分为肥料类型。将对不同区块的结果进行分析。让我们用R语言看看上面的内容。
注: 在R语言中 agricolae 包也可以用来实现RCBD。但这里我们使用的是不同的方法。
让我们建立数据框架。
corn <- factor(rep(c("corn", "rice", "wheat"), each = 3))
fert <- factor(rep(c("f1", "f2", "nf"), times = 3))
corn
输出
[1] corn corn corn rice rice rice wheat wheat wheat
Levels: corn rice wheat
y <- c(6, 5, 6,
4, 4.2, 5,
5, 4.4, 5.5)
# y is the months the crops were healthy
results <- data.frame(y, corn, fert)
fit <- aov(y ~ fert+corn, data = results)
summary(fit)
输出
Df Sum Sq Mean Sq F value Pr(>F)
fert 2 1.4022 0.7011 6.505 0.0553 .
corn 2 2.4156 1.2078 11.206 0.0229 *
Residuals 4 0.4311 0.1078
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
解释 。
Mean Sq 的值显示了实验中是否真的需要阻断。这里的Mean Sq 0.1078<<0.7011,因此阻断是必要的,它将为实验提供精确的数值。虽然这种方法有点值得商榷,但却很有用。每个实验的意义值都是由参加实验的人给出的。这里让我们考虑显著性为5%,即0.05。Pr(>F)值为0.553>0.05。因此,作物实验的假设被接受。让我们再考虑一个实验。
实验二
比较学生(男性和女性)区块在不同环境下(在家里和在大学)的表现。要在图中表示这个实验将如下。
注意: 一般来说,为了获得更好的结果,考虑同等数量的区块和处理是安全的。
在上面的图片中。
AC – 在大学,AH: 在家
学生被分为男性和女性两组。然后每个区块被分为2个不同的环境(家庭和大学)。让我们在代码中看到这一点。
stud <- factor(rep(c("male", "female"), each = 2))
perf <- factor(rep(c("ah", "ac" ), times = 2))
perf
输出
[1] ah ac ah ac
Levels: ac ah
y <- c(5.5, 5,
4, 6.2)
# y is the hours students
# studied in specific places
results <- data.frame(y, stud, perf)
fit <- aov(y ~ perf+stud, data = results)
summary(fit)
输出
Df Sum Sq Mean Sq F value Pr(>F)
perf 1 0.7225 0.7225 0.396 0.642
stud 1 0.0225 0.0225 0.012 0.930
Residuals 1 1.8225 1.8225
解释一下 。
Mean Sq的值是0.7225<<1.8225,也就是说,这里没有必要进行封锁。由于Pr值为0.642>0.05(5%的显著性),假设被接受。