Learn R Programming

itsadug (version 1.0.1)

acf_resid: Generate an ACF plot of model residuals. Works for lm, lmer, gam, bam, ....

Description

Wrapper around acf_plot and acf_n_plots for regression models.

Usage

acf_resid(model, split_pred = NULL, n = 1, plot = TRUE, ...)

Arguments

model
A regression model generated by lm, glm, lmer, glmer, gam, or bam. (See examples for how to avoid errors
split_pred
Vector with names of model predictors that determine the time series in the data, or should be used to split the ACF plot by. Alternatively, split_pred can be a names list as being used by acf_plot
n
The number of plots to generate. If n=1 (default) then acf_plot is being called. If n>1 then acf_n_plots is being called.
plot
Logical: whether or not to produce plot. Default is TRUE.
...
Other arguments as input for acf_plot or acf_n_plots.

Value

  • An aggregated ACF plot and / or optionally a list with the aggregated ACF values.

See Also

Use acf for the original ACF function, and acf_plot, or acf_n_plots.

Other functions for model criticism: acf_n_plots; acf_plot; check_normaldist; resid.gam, resid_gam

Examples

Run this code
data(simdat)

# add missing values to simdat:
simdat[sample(nrow(simdat), 15),]$Y <- NA

# Run GAMM model:
m1 <- bam(Y ~ te(Time, Trial)+s(Subject, bs='re'), data=simdat)

# Using a list to split the data:
acf_resid(m1, split_pred=list(simdat$Subject, simdat$Trial))
# ...or using model predictors:
acf_resid(m1, split_pred=c("Subject", "Trial"))

# Calling acf_n_plots:
acf_resid(m1, split_pred=c("Subject", "Trial"), n=4)
# add some arguments:
acf_resid(m1, split_pred=c("Subject", "Trial"), n=4, max_lag=10)

# This does not work...
m2 <- lm(Y ~ Time, data=simdat)
acf_resid(m2, split_pred=c("Subject", "Trial"))
# ... but this is ok:
acf_resid(m2, split_pred=list(simdat$Subject, simdat$Trial))

# See acf_plot for how to deal wit missing data
# see the vignette for examples:
vignette("acf", package="itsadug")

Run the code above in your browser using DataLab