A horticulturalist conducted a nitrogen fertility experiment for lettuce in a randomized complete block design. Five rates of ammonium nitrate treatments (0, 50, 100, 150 and 250 lb/acre) were randomly assigned to each of two plots in each of two blocks for a total of four plots for each level of nitrogen. Each block consisted of ten plots, two plots for each treatment in each block. The data are the number of lettuce heads from each plot.

Nitrogen $\hspace{1em}$ Block 1 $\hspace{1em}$ Block 2

0 $\hspace{3.9em}$ 104 114 $\hspace{1em}$ 109 124

50 $\hspace{3.5em}$ 134 130 $\hspace{1em}$ 154 164

100 $\hspace{3em}$ 146 142 $\hspace{1em}$ 152 156

150 $\hspace{3em}$ 147 160 $\hspace{1em}$ 160 163

200 $\hspace{3em}$ 133 146 $\hspace{1em}$ 156 161

  1. Write the linear model for the experiment, explain the terms, and compute the analysis of variance.

  2. Compare pairs of treatment means using Tukey's procedure at $\alpha = 0.01$.

Answer: I have used the following R-Code to obtain the analysis of variance:

Fert = c(104, 134, 146, 147, 133, 114, 130, 142, 160, 146, 109, 154, 152, 160, 156, 124, 164, 156, 163, 161)

Blocks = factor(rep(1:2, each = 10))

Nitrogen = factor(rep(1:5, 4))

Fert.df = data.frame(Nitrogen, Blocks, Fert)

Fert.aov = aov(Fret ~ Blocks + Nitrogen, Fert.df)


            Df Sum Sq Mean Sq F value   Pr(>F)    

Blocks       1   1022  1022.4   20.15  0.00051

Nitrogen     4   4813  1203.2   23.72 4.13e-06

Residuals   14    710    50.7                    

I am trying to compute these values by hand, having success with SS$_{\rm Nitrogen}$, however have had no success with SS$_{\rm Blocks}$. I am using the model $y_{ij} = \mu + \tau_i + \beta_j + \epsilon_{ij}$, however cannot find a model which allows for replicates.

Any help is greatly appreciated.


2 Answers 2


You have a two-way fixed effects model with $m$ observations per cell (assuming no interaction):

$$y_{ijk}=\mu+\tau_i+\beta_j+\varepsilon_{ijk}\,,\quad i=1,\ldots,p;j=1,\ldots,q;k=1,\ldots,m\,,$$

where $\tau_i$ is effect due to $i$th treatment and $\beta_j$ is effect due to $j$th block.

Then sum of squares due to blocks is $$SSB=pm\sum_{j=1}^q (\overline{y}_{0j0}-\overline{y}_{000})^2\,,$$

where $\overline{y}_{0j0}=\frac1{pm}\sum\limits_{i,k} y_{ijk}$ and $\overline{y}_{000}=\frac1{pqm}\sum\limits_{i,j,k}y_{ijk}$.

With $j$th block total $T_{0j0}=\sum\limits_{i,k} y_{ijk}$ and grand total $G=\sum\limits_{i,j,k}y_{ijk}$, we have the working formula

$$SSB=\frac1{pm}\sum_{j=1}^q T_{0j0}^2-\frac{G^2}{pqm}$$

With similar notation, sum of squares due to treatments is $$SST=qm\sum_{i=1}^p(\overline{y}_{i00}-\overline{y}_{000})^2=\frac1{qm}\sum_{i=1}^p T_{i00}^2-\frac{G^2}{pqm}$$

And total sum of squares is $$TSS=\sum_{i,j,k}(y_{ijk}-\overline{y}_{000})^2=\sum_{i,j,k}y_{ijk}^2-\frac{G^2}{pqm}$$

  • $\begingroup$ Given the slight differences in formula derivations because of the existence of replicates, does Tukey's procedure need to change to compensate for replicates? What I mean is, can we calculate the treatment means as usual given the existence of replicates? $\endgroup$
    – Chesso
    Commented Mar 21, 2020 at 13:26
  • $\begingroup$ There will be slight adjustments. What is your usual formula? $\endgroup$ Commented Mar 21, 2020 at 15:22
  • $\begingroup$ We would reject $H_0$ if $|\overline{y}_{i\cdot} - \overline{y}_{j\cdot}| > T_{\alpha}$, where $\overline{y}_{i\cdot}$ and $\overline{y}_{j\cdot}$ are the means of the observations under treatments $i$ and $j$, and $T_{\alpha} = \frac{q_{\alpha}(a, df_{\rm Error})}{\sqrt{2}}\sqrt{{\rm MSE}\left[\frac{1}{n_i} + \frac{1}{n_j}\right]}$. $\endgroup$
    – Chesso
    Commented Mar 21, 2020 at 15:38
  • $\begingroup$ @Chesso Here reject $H_0:\tau_i=\tau_{i'}$ if $|\overline y_{i\cdot\cdot}-\overline y_{i'\cdot\cdot}|>q_{\alpha}(p,df_{\text{Error}})\sqrt{\frac{\operatorname{MSE}}{qm}}$. $\endgroup$ Commented Mar 21, 2020 at 16:00

If you are looking to calculate the SS for the blocks, the formula from wikipedia is:

${\displaystyle SS_{\text{Block}}=n_{\text{Treat}}\cdot n_{\text{Rep}}\sum \left({\bar {x}}_{\cdot j\cdot }-{\bar {x}}\right)^{2}} $

In this case ${n_{\text{treat}}}$ is the number of treatments (5), ${n_{\text{rep}}}$ is the number replicates (2).

Find the mean for each Block ${\bar {x}}_{\cdot j\cdot }$, then subtract the grand mean from each block mean.

#sum of squres for the blocks
#find mean for each block
blocks <- Fert.df %>% group_by(Blocks) %>% summarize(Fert=mean(Fert))
#number of treatments * number of replicates
5*2*sum((blocks$Fert - mean(Fert.df$Fert))^2)
#[1] 1022.45
  • $\begingroup$ Understood. Does the formula you used fall under the category of RCBD or perhaps a Factorial design? I ask because of the use of the notation $\overline{x}_{\cdot j\cdot}$ $\endgroup$
    – Chesso
    Commented Mar 20, 2020 at 11:35
  • $\begingroup$ It is from RCBD, the reference is "Design and Analysis of Experiments" by Montgomery section 4.1 $\endgroup$
    – Dave2e
    Commented Mar 20, 2020 at 11:50

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.