
Last chance! 50% off unlimited learning
Sale ends in
Function to compute predicted values based on linear predictor and associated standard errors from various fitted models.
predictSE(mod, newdata, se.fit = TRUE, print.matrix = FALSE, ...)# S3 method for gls
predictSE(mod, newdata, se.fit = TRUE, print.matrix =
FALSE, ...)
# S3 method for lme
predictSE(mod, newdata, se.fit = TRUE, print.matrix =
FALSE, level = 0, ...)
# S3 method for mer
predictSE(mod, newdata, se.fit = TRUE, print.matrix =
FALSE, level = 0, type = "response", ...)
# S3 method for merMod
predictSE(mod, newdata, se.fit = TRUE, print.matrix =
FALSE, level = 0, type = "response", ...)
# S3 method for lmerModLmerTest
predictSE(mod, newdata, se.fit = TRUE, print.matrix =
FALSE, level = 0, ...)
# S3 method for unmarkedFitPCount
predictSE(mod, newdata, se.fit = TRUE,
print.matrix = FALSE, type = "response", c.hat = 1, parm.type =
"lambda", ...)
# S3 method for unmarkedFitPCO
predictSE(mod, newdata, se.fit = TRUE,
print.matrix = FALSE, type = "response", c.hat = 1,
parm.type = "lambda", ...)
predictSE
returns requested values either as a matrix
(print.matrix = TRUE
) or list (print.matrix = FALSE
)
with components:
the predicted values.
the standard errors of the predicted values (if se.fit = TRUE
).
an object of class gls
, lme
, mer
,
merMod
, lmerModLmerTest
, unmarkedFitPCount
,
or unmarkedFitPCO
containing the output of a model.
a data frame with the same structure as that of the original data frame for which we want to make predictions.
logical. If TRUE
, compute standard errors on predictions.
logical. If TRUE
, the output is returned as a matrix, with
predicted values and standard errors in columns. If FALSE
,
the output is returned as a list.
the level for which predicted values and standard errors are to be
computed. The current version of the function only supports
predictions for the populations excluding random effects (i.e.,
level = 0
).
specifies the type of prediction requested. This argument can take
the value response
or link
, for predictions on the
scale of the response variable or on the scale of the linear
predictor, respectively.
value of overdispersion parameter (i.e., variance inflation factor)
such as that obtained from Nmix.gof.test
. If c.hat >
1
, predictSE
will multiply the variance-covariance matrix of
the predictions by this value (i.e., SE's are multiplied by
sqrt(c.hat)
). High values of c.hat
(e.g., c.hat
> 4
) may indicate that model structure is inappropriate.
the parameter for which predictions are made based on the
N-mixture model of class unmarkedFitPCount
or
unmarkedFitPCO
classes.
additional arguments passed to the function.
Marc J. Mazerolle
predictSE
computes predicted values and associated standard
errors. Standard errors are approximated using the delta method
(Oehlert 1992). Predictions and standard errors for objects of
gls
class and mixed models of lme
, mer
,
merMod
, lmerModLmerTest
classes exclude the
correlation or variance structure of the model.
predictSE
computes predicted values on abundance and standard
errors based on the estimates from an unmarkedFitPCount
or
unmarkedFitPCO
object. Currently, only predictions on
abundance (i.e., parm.type = "lambda"
) with the zero-inflated
Poisson distribution is supported. For other parameters or
distributions for models of unmarkedFit
classes, use
predict
from the unmarked
package.
Efron, B., Tibshirani, R. J. (1998) An Introduction to the Bootstrap. Chapman & Hall/CRC: New York.
Gelman, A., Hill, J. (2007) Data Analysis Using Regression and Multilevel/Hierarchical Models. Cambridge University Press: New York.
Oehlert, G. W. (1992) A note on the delta method. American Statistician 46, 27--29.
gls
, lme
, glmer
,
simulate.merMod
, boot
,
parboot
, nonparboot
,
pcount
, pcountOpen
,
unmarkedFit-class
##Orthodont data from Pinheiro and Bates (2000) revisited
if (FALSE) {
require(nlme)
m1 <- gls(distance ~ age, correlation = corCompSymm(value = 0.5, form = ~ 1 | Subject),
data = Orthodont, method= "ML")
##compare against lme fit
logLik(m1)
logLik(lme(distance ~ age, random = ~1 | Subject, data = Orthodont,
method= "ML"))
##both are identical
##compute predictions and SE's for different ages
predictSE(m1, newdata = data.frame(age = c(8, 10, 12, 14)))
detach(package:nlme)
}
##example with mallard data set from unmarked package
if (FALSE) {
require(unmarked)
data(mallard)
mallardUMF <- unmarkedFramePCount(mallard.y, siteCovs = mallard.site,
obsCovs = mallard.obs)
##run model with zero-inflated Poisson abundance
fm.mall.one <- pcount(~ ivel + date ~ length + forest, mallardUMF, K=30,
mixture = "ZIP")
##make prediction
predictSE(fm.mall.one, type = "response", parm.type = "lambda",
newdata = data.frame(length = 0, forest = 0, elev = 0))
##compare against predict
predict(fm.mall.one, type = "state", backTransform = TRUE,
newdata = data.frame(length = 0, forest = 0, elev = 0))
##add offset in model to scale abundance per transect length
fm.mall.off <- pcount(~ ivel + date ~ forest + offset(length), mallardUMF, K=30,
mixture = "ZIP")
##make prediction
predictSE(fm.mall.off, type = "response", parm.type = "lambda",
newdata = data.frame(length = 10, forest = 0, elev = 0))
##compare against predict
predict(fm.mall.off, type = "state", backTransform = TRUE,
newdata = data.frame(length = 10, forest = 0, elev = 0))
detach(package:unmarked)
}
Run the code above in your browser using DataLab