You are on page 1of 5

Tukey's Test for Non-Additivity in

Randomized Complete Block Designs


(c) Oliver Schabenberger 1997. The material on this page is for non-profit use only.
Distribution or publication requires the author's written consent.

Contents
1.) Introduction
2.) Tukey's 1 d.f. test for interaction
3.) A SAS Macro for Tukey's 1 d.f. test
4.) Example

1.) Introduction
The classical randomized complete block design (RCBD) with t treatments in b blocks assumes
additivity of treatments and blocks. Contributions of block and treatment effects to the response are
independent and additive. The underlying statistical model is
yij = m + tx i + bl j + eij
where m is the grand mean, tx i the ith treatment effect, bl j the jth block effect, and eij is the
experimental error of treatment i in block b. An example with 4 fertilizer treatments in 2 blocks may
look like this:
Block 1
Block 2

Fert3
Fert2

Fert4
Fert1

Fert1
Fert4

Fert2
Fert3

The assumption of block-treatment additivity is tenable if the comparisons of treatments do not


depend on the block in which they are made. If the blocking factor and the treatment factor are
related, however, the assumption of additivity may be violated. To unravel whether this is the case,
the RCBD must be modified to accommodate Block*Treatment interaction.
The next table shows the ANOVA for a standard RCBD(t,b).

Source

Degrees of Freedom

Block

(b-1)

Treatments

(t-1)

Exp. Error

(b-1)(t-1)

The degrees of freedom for experimental error are exactly the degrees of freedom one would expect
for a Block*Treatment interaction. A model augmented by interactions would be
yij = m + tx i + bl j +(tx*bl)ij + eij

The interaction term and the experimental error share the same subsripts and can not be separated.
In a RCBD the interaction between blocks and treatments serves as the experimental error source of
variability. Another explanation, why interaction can not be measured as in the previous model is
that in the classical RCBD every treatment appears exactly once in each block. In order to estimate
the variability stemming from interactions between blocks and treatments, one needs independent
replicates of the treatments within the blocks.

2) Tukey's 1 d.f. test for interaction


We can not estimate the interaction between blocks and treatments in each general form, i.e. as
(tx*bl)ij since this would deplete the error degrees of freedom totally. However, a more
parsimonious specification of interaction may require less than (b-1)(t-1) degrees of freedom, hence
retain some degrees of freedom for the experimental error.
Tukey (Biometrics 1949, 5, 232-242) introduced a one degree of freedom test for a very special
case of multiplicative interaction. The model is set up as
yij = m + tx i + bl j +k*(txi *blj) + eij
and the interaction is measured by k*(txi*blj) where k is the non-additivity parameter. If k = 0 the
additive RCBD model results, otherwise k*(txi*blj) is a multiplicative adjustment to the additive
response. Only a single degree of freedom is associated with the parameter k, leaving (b-1)(t-1)-1
degrees of freedom for experimental error. The disadvantage of Tukey's test for non-additivity is
that it tests a very specific case of interaction. If Ho: k = 0 can not be rejected, does not imply that
there is no interaction between treatment and blocks (by the way: failure to reject a null hypothesis
never makes that hypothesis true). Blocks and treatments could interact in a pattern different from
k*(txi*blj), which is not detectable with this test.
When performing the analysis of a RCBD including Tukey's test for non-additivity, the term
(txi*blj) is replaced with the product
(yi. - y..)(y.j - y..)
where yi. is the sample mean of the ith treatment, y.j is the sample mean of the jth block, and y.. is the
grand sample mean. The cross-product is treated as a covariate in the ANOVA.

3) A SAS macro for RCBD analysis with Tukey's 1 d.f. test for interaction
The following SAS macro reads an input data set presumed to contain the information for a RCBD
analysis, creates the cross-product covariate and performs an RCBD analysis with and without
Tukey's test for interaction. The covariate testing the interaction is called NONADD. For simplicity
the variables in the input data set are renamed on the output as BLOCK and TX to denote block and
treatment effects generically.
The macro has four input parameters
denotes the input data set. It should contain a response, a variable identifying treatments, and
one variable identifying blocks
Y= denotes the response (the measured variable for which treatments are compared)
Tx= the variable identifying treatments
Block= the variable identifying blocks
data=

/* ----------------------------------------- Macro begins here */


%macro Nonadd(data=_last_,Y=Y,Tx=Tx,Block=Block);
title1 'SAS Macro NonAdd: (c) Oliver Schabenberger, January 1997.';
options nocenter formdlim=' ';
data temp; set &data; rename &Y.=Y &Tx.=Tx &Block.=Block; run;
proc sort data=temp; by Tx; run;
proc means data=temp noprint;
var y;
by Tx;
output out=meanTx mean=meanTx;
run;
data new; merge temp meanTx; by Tx; run;
proc sort data=temp; by Block; run;
proc means data=temp noprint;
var y;
by Block;
output out=meanBl mean=meanBl;
run;
proc sort data=new; by Block; run;
data new; merge new meanBl; by Block; run;
proc means data=new noprint;
var y;
output out=mean mean=mean;
run;
data new;
set new;
if _n_ = 1 then merge mean(keep=mean);
drop _type_ _freq_;
nonadd = (meanTx-mean)*(meanBl-mean);
run;
title2 "Analysis as a straight RCBD without test for non-additivity";
title3 "Variable BLOCK was parsed to macro NonAdd as &Block.
";
title4 "Variable TX
was parsed to macro NonAdd as &Tx.
";
proc glm data=new;
class Block Tx;
model y = Block Tx /ss3;
run; quit;
title2 "Analysis as RCBD with Tukey's test for non-additivity";
title3 "Variable BLOCK was parsed to macro NonAdd as &Block. ";
title4 "Variable TX
was parsed to macro NonAdd as &Tx.
";
title5 "Variable NONADD measures non-additivity parameter
";
proc glm data=new;
class Block Tx;
model y = Block Tx nonadd /ss3;
run; quit;
options center formdlim='';
%mend Nonadd;
/* ----------------------------------------- Macro ends here */

4) Example
The following example is borrowed from R. Kuehl (1994) Statistical Principles of Research Design
and Analysis, Duxbury Press, Belmont, CA

/* ---------------------------------------------------------------/* Example 8.1: Timing of Nitrogen Fertilization for Wheat


/* Data are in Display 8.1 on page 258
/* ---------------------------------------------------------------data nitrogen;
input Treat Block nitrate @@;
datalines;
1 1 34.98 1 2 41.22 1 3 36.94 1 4 39.97
2 1 40.89 2 2 46.69 2 3 46.65 2 4 41.90
3 1 42.07 3 2 49.42 3 3 52.68 3 4 42.91
4 1 37.18 4 2 45.85 4 3 40.23 4 4 39.20
5 1 37.99 5 2 41.99 5 3 37.61 5 4 40.45
6 1 34.89 6 2 50.15 6 3 44.57 6 4 43.29
;;
run;

*/
*/
*/
*/

The experiment - described in detail on page 257 of Kuehl (1994) - contains t=6 fertilization
treatments in b=4 blocks. The measured response is wheat stem tissue nitrate amounts. To test for
interaction between blocks and treatments invoke the macro NonAdd (after it has been compiled)
%Nonadd(data=nitrogen,Y=nitrate,Tx=Treat,Block=Block);

The abbreviated output produced by %NonAdd() is


SAS Macro NonAdd: (c) Oliver Schabenberger, January 1997.
Analysis as a straight RCBD without test for non-additivity
Variable BLOCK was parsed to macro NonAdd as Block
Variable TX
was parsed to macro NonAdd as Treat

General Linear Models Procedure


Class Level Information
Class
Levels
Values
BLOCK
4
1 2 3 4
TX
6
1 2 3 4 5 6
Number of observations in data set = 24
General Linear Models Procedure
Dependent Variable: Y
Source
Model
Error
Corrected Total

DF
8
15
23

Sum of
Squares
398.320317
108.008417
506.328733

Mean
Square
49.790040
7.200561

F Value
6.91

Pr > F
0.0007

Source
BLOCK
TX

DF
3
5

Type III SS
197.003933
201.316383

Mean Square
65.667978
40.263277

F Value
9.12
5.59

Pr > F
0.0011
0.0042

SAS Macro NonAdd: (c) Oliver Schabenberger, January 1997.


Analysis as RCBD with Tukey's test for non-additivity
Variable BLOCK was parsed to macro NonAdd as Block
Variable TX
was parsed to macro NonAdd as Treat
Variable NONADD measures non-additivity parameter
General Linear Models Procedure
Class Level Information
Class
Levels
Values

BLOCK
TX

4
6

1 2 3 4
1 2 3 4 5 6

Number of observations in data set = 24


Dependent Variable: Y
Source
Model
Error
Corrected Total

DF
9
14
23

Sum of
Squares
409.928414
96.400319
506.328733

Mean
Square
45.547602
6.885737

F Value
6.61

Pr > F
0.0010

Source
BLOCK
TX
NONADD

DF
3
5
1

Type III SS
197.003933
201.316383
11.608098

Mean Square
65.667978
40.263277
11.608098

F Value
9.54
5.85
1.69

Pr > F
0.0011
0.0040
0.2151

The test for non-additivity is non-significant with a p-value of 0.2151. The hypothesis that an
interaction of form k*(txi*blj ) exists, can not be rejected. Other types of interaction patterns may
needto be tested. Notice how the F- and associated p- value for the treatment variable changed
between the pure RCBD and the RCBD/Interaction analysis. Estimation of the interaction
parameter removes some variability from the error sums of squares but also depletes one degree of
freedom, while the treatment sum of squares is unchanged in both analyses.
This page is maintained by Oliver Schabenberger. For comments, click here .
Last updated: January 13, 1997
SAS is a registered trademark of SAS Institute, Inc., Cary, NC

You might also like