manylm is used to fit multivariate linear models
to high-dimensional data, such as multivariate abundance data in ecology.
This is the base model-fitting function - see plot.manylm for
assumption checking, and anova.manylm or summary.manylm
for significance testing.manylm(
formula, data=NULL, subset=NULL, weights=NULL,
na.action=options("na.action"), method="qr", model=FALSE,
x=TRUE, y=TRUE, qr=TRUE, singular.ok=TRUE, contrasts=NULL,
offset, test="LR" , cor.type= "I", shrink.param=NULL,
tol=1.0e-5, ...)"formula" (or one that
can be coerced to that class): a symbolic description of the
model to be fitted. The details of model specification are given
under Details.as.data.frame to a data frame) containing
the variables in the model. If not found in data, the
variables are taken from environment(formulNULL or a numeric vector.
If non-null, weighted least squares is used with weights
weights (that is, minimizing sum(weights*e^2)NAs. The default is set by
the na.action setting of options, and is
na.fail if that is unset. The method = "qr" is supported; method = "model.frame" returns
the model frame (the same as with model = TRUE, see below).TRUE the corresponding
components of the fit (the model frame, the model matrix, the
response, the QR decomposition) are returned.FALSE (the default in S but
not in R) a singular fit is an error.contrasts.arg
of model.matrix.default.NULL or a numeric vector of
length either one or equal to the number of cases.
One or NULL = no test
This parameter is merely stored in manylm, and will be used as the default value of cor.type in subsequent functiocor.type="shrink". This parameter will be used as the default value of shrink.param in subsequent functions for inference.manylm returns an object of c("manylm", "mlm", "lm") for multivariate
formula response and of of class c("lm") for univariate response.
A manylm object is a list containing at least the following components:(t(x)%*%x).test argument supplied.cor.type argument supplied.resample argument supplied.nBoot argument supplied.terms object used.assign and
(unless not requested) qr relating to the linear
fit, for use by extractor functions such as summary.manylm.manylm are specified symbolically. For details on this
compare the details section of lm and formula. If the formula
includes an offset, this is evaluated and subtracted from the
response.
See model.matrix for some further details. The terms in
the formula will be re-ordered so that main effects come first,
followed by the interactions, all second-order, all third-order and so
on: to avoid this pass a terms object as the formula (see
aov and demo(glm.vr) for an example).
A formula has an implied intercept term. To remove this use either
y ~ x - 1 or y ~ 0 + x. See formula for
more details of allowed formulae.
manylm calls the lower level function manylm.fit
or manylm.wfit for the actual numerical computations.
For programming only, you may consider doing likewise.
All of weights, subset and offset are evaluated
in the same way as variables in formula, that is first in
data and then in the environment of formula.
For details on arguments related to hypothesis testing (such as cor.type
and resample) see summary.manylm or
anova.manylm.anova.manylm, summary.manylm, plot.manylmdata(spider)
spiddat <- log(spider$abund+1)
spiddat <- mvabund(spiddat)
X <- spider$x
lm.spider <- manylm(spiddat~X)
lm.spider
#Then use the plot function for diagnostic plots, and use anova or summary to
#evaluate significance of different model terms.Run the code above in your browser using DataLab