Forms the estimated variance (V), random (G) or (R) matrix
for the observations, a square symmetric matrix of order equal to the number of
observations. The estimates of the variance parameters and the information about
the random
and residual
models for which they were estimated are
obtained from the asreml
object.
This function is not available in ASReml-R version 3.
# S3 method for asreml
estimateV(asreml.obj, which.matrix = "V",
extra.matrix = NULL, ignore.terms = NULL, fixed.spline.terms = NULL,
bound.exclusions = c("F","B","S","C"), ...)
A matrix
containing the estimated variance matrix. It has an attribute
missing.termmatrix
(use attr(x, which = "missing.termmatrix")
to access the
atrribute). It will be NULL
, unless the design matrix could not be obtained for
one or more model terms. If is is not NULL
, it will be a list of terms that could
not be produced for inclusion in the variance matrix estimate, and NA
will be
returned for the estimated variance matrix.
An asreml
object from a call to asreml
in which the
data
argument has been set.
A character
giving the matrix that is to be formed. It must be
one of "V"
, to produce the variance matrix V = G + R,
"G"
to produce the matrix G, corresponding to the random
formula, or "R"
to produce the matrix R, corresponding to the
residual
formula.
A matrix
of order equal to the number of observations that is to
be added to the matrix
specified by which.matrix
, the latter based
on the information in asreml.obj
. It is assumed that the sigma-parameterized
values of the variance parameter estimates, such as is given in the varcomp
component of summary.asreml
, have been used in calculating
extra.matrix
; the values in the vparameters
component of
G.param
and R.param
may be either gamma- or sigma-parameterized.
The argument extra.matrix
can be used in conjunction with
ignore.terms
as a workaround to include components of the variance matrix
for variance functions that have not been implemented in estimateV
.
A character
giving terms from either the random
or
residual
models that are to be ignored in that their contributions to
the variance is not to be included in the estimated matrix. The term names are those
given in the vparameters
component of the asreml
object or the
varcomp
component produced by summary.asreml
, but only up to the
first exclamation mark (!
). This can be used
in conjunction with estimateV.asreml
as a workaround to include components
of the variance matrix for variance functions that have not been implemented
in estimateV
.
A character
vector giving one or more spline terms in the
random
model that are regarded as fixed and so are to be ignored because
they are not regarded as contributing to the variance. The term names are those
given in the vparameters
component of the asreml
object or the
varcomp
component produced by summary.asreml
, but only up to the
first exclamation mark (!
).
A character
specifying one or more bound codes that
will result in a variance parameter in the random
model being excluded
from contributing to the variance. If set to NULL
then none will
be excluded.
Provision for passing arguments to functions called internally - not used at present.
Chris Brien
The information about the variance parameters in the fitted mixed model are obtained
from the G.param
and R.param
components of the asreml
object. The
function can deal with the following variance functions in either the random
or
residual
models: id
, diag
, us
, ar1
, ar2
,
ar3
, sar
,sar2
, ma1
, ma2
, arma
, exp
,
gau
, cor
, corb
and corg
. All of these functions,
except us
, can be combined with either v
or h
. It will also cope
with the following functions in the random
model: at
, str
,
spl
, dev
, grp
, fa
and rr
. Additionally, it can deal
with the function dsum
in the residual
model. For further information see
the ASReml-R User Guide Version 4 (Butler et al., 2023).
Butler, D. G., Cullis, B. R., Gilmour, A. R., Gogel, B. J. and Thompson, R. (2023). ASReml-R Reference Manual Version 4.2. VSN International Ltd, https://asreml.kb.vsni.co.uk/.
asreml
, simulate.asreml
, variofaces.asreml
.
if (FALSE) {
data(Wheat.dat)
current.asr <- asreml(yield ~ Rep + WithinColPairs + Variety,
random = ~ Row + Column + units,
residual = ~ ar1(Row):ar1(Column),
data=Wheat.dat)
# Form variance matrix based on estimated variance parameters
V <- estimateV(current.asr)
}
Run the code above in your browser using DataLab