1. Home
  2. AEFFICIENCY procedure


Calculates efficiency factors for experimental designs (R.W. Payne).


FACTORIAL = scalar Limit on the number of factors in each treatment term generated from TERMS; default 3
METHOD = string token Whether to eliminate or ignore earlier model terms from the TERMS formula (eliminate, ignore); default elim
FORCED = formula Terms to be eliminated before fitting TERMS; default * i.e. none


TERMS = formula Model terms
DF = pointer or scalar Saves the degrees of freedom of the terms
EFFICIENCY = pointer or variate Saves the efficiency factors of the terms
DFALIASED = pointer or scalar Saves the number of aliased degrees of freedom of the terms


The efficiency factors of a model term represent the proportion of the information about various contrasts amongst its effects that remains available for estimating the contrasts, after fitting the earlier terms in the analysis. If the term is balanced, the efficiency factors will all be equal. If not, their range gives an indication of the degree of imbalance.

The model terms of interest are specified by the TERMS parameter. You can also use the FORCED option to specify a set of model terms that must be eliminated before those in TERMS are fitted. By default, the efficiency factors are calculated under the assumption that the model terms in TERMS are to be fitted sequentially. So, each term is estimated eliminating the earlier terms in TERMS. Alternatively, you can set option METHOD=ignore to calculate the efficiency factors for the terms eliminating only their marginal terms and the terms in the FORCED formula. (Marginal terms are terms whose factors are a subset of those in the term: e.g. the main effects A and B are marginal terms of the interaction A.B.)

The EFFICIENCY parameter saves the efficiency factors. If the TERMS parameter specifies a single term, EFFICIENCY must be undeclared or set to a variate. If TERMS specifies several terms, you must supply a pointer which will then be set up to contain as many variates as there are terms. Similarly the DF parameter can save the numbers of degrees of freedom of each term, and the DFALIASED parameter can save the numbers of degrees of freedom of each term that are aliased either with terms in the FORCED formula or with terms that come before it in the TERMS formula.




The efficiency factors are the eigenvalues of the matrix TST, where T is the projection matrix for the model term, and S is the projection matrix into the space orthogonal to the previous terms. The corresponding contrasts are the eigenvectors of the matrix. See Payne & Tobias (1992), Section 4.

AEFFICIENCY uses the FPROJECTIONMATRIX procedure to form projection matrices for the model terms. Marginal terms are eliminated using Equation (2.7) of Payne & Tobias (1992), amd the efficiency factors are calculated by an eigenvalue decomposition as in Equation (4.9).

Action with RESTRICT

AEFFICIENCY takes account of any restrictions on the y-variate.


Payne, R.W. & Tobias, R.D. (1992). General balance, combination of information and the analysis of covariance. Scandinavian Journal of Statistics, 19, 3-23.

See also

Directive: ANOVA.

Procedure: ASWEEP.

Commands for: Analysis of variance.


            'Data in the Guide to Genstat, Part 2, Example 4.7.1';\
FACTOR      [NVALUES=32; LEVELS=8] Blocks
&           [LEVELS=4] Plots
&           [LEVELS=2; LABELS=!T(_,n)] N
&           [LABELS=!T(_,k)] K
&           [LABELS=!T(_,d)] D
GENERATE    Blocks,Plots
READ        [PRINT=errors] N,K,D; FREPRESENTATION=labels
 _ _ _   n k _   n _ d   _ k d       n _ _   _ k _   _ _ d   n k d
 n _ _   _ k _   n _ d   _ k d       _ _ _   _ _ d   n k _   n k d
 n _ _   _ _ d   n k _   _ k d       _ _ _   _ k _   n _ d   n k d
 _ k _   _ _ d   n k _   n _ d       _ _ _   n _ _   _ k d   n k d  :
READ     [SETNVALUES=yes] Yield
101  291  373  398      106  265  312  450
 89  272  338  407      106  324  306  449
128  323  334  423       87  279  324  471
302  324  272  361      131  103  445  437 :
ANOVA       [PRINT=aov,info; FPROB=yes] Yield
PRINT       ef[]; FIELD=8
Updated on March 11, 2019

Was this article helpful?