tvcolmm {vcrpart} | R Documentation |
Tree-based varying coefficient regression based on ordinal and nominal two-stage linear mixed models.
Description
The tvcolmm
function implements the
tree-based longitudinal varying coefficient regression algorithm
proposed in Burgin and Ritschard (2015). The algorithm approximates
varying fixed coefficients in the cumulative logit mixed model by a
(multivariate) piecewise constant function using recursive
partitioning, i.e., it estimates the fixed effect component of the
model separately for strata of the value space of partitioning
variables.
Usage
tvcolmm(formula, data, family = cumulative(),
weights, subset, offset, na.action = na.omit,
control = tvcolmm_control(), ...)
tvcolmm_control(sctest = TRUE, alpha = 0.05, bonferroni = TRUE,
minsize = 50, maxnomsplit = 5, maxordsplit = 9,
maxnumsplit = 9, fast = TRUE,
trim = 0.1, estfun.args = list(), nimpute = 5,
seed = NULL, maxstep = 1e3, verbose = FALSE, ...)
Arguments
formula |
a symbolic description of the model to fit, e.g.,
where |
family |
the model family. An object of class
|
data |
a data frame containing the variables in the model. |
weights |
an optional numeric vector of weights to be used in the fitting process. |
subset |
an optional logical or integer vector specifying a
subset of |
offset |
this can be used to specify an a priori known component to be included in the linear predictor during fitting. |
na.action |
a function that indicates what should happen if data
contain |
control |
a list with control parameters as returned by
|
sctest |
logical scalar. Defines whether coefficient constancy tests should be used for the variable and node selection in each iteration. |
alpha |
numeric significance threshold between 0 and 1. A node is
splitted when the smallest (possibly Bonferroni-corrected) |
bonferroni |
logical. Indicates if and how |
minsize |
numeric scalar. The minimum sum of weights in terminal nodes. |
maxnomsplit , maxordsplit , maxnumsplit |
integer scalars for split
candidate reduction. See |
fast |
logical scalar. Whether the approximative model should be
used to search for the next split. See
|
trim |
numeric between 0 and 1. Specifies the trimming parameter
in coefficient constancy tests for continuous partitioning
variables. See also the argument |
estfun.args |
list of arguments to be passed to
|
nimpute |
a positive integer scalar. The number of times coefficient constancy tests should be repeated in each iteration. See details. |
seed |
an integer specifying which seed should be set at the beginning. |
maxstep |
integer. The maximum number of iterations i.e. number of splits to be processed. |
verbose |
logical. Should information about the fitting process be printed to the screen? |
... |
additional arguments passed to the fitting function
|
Details
The tvcolmm
function iterates the following steps:
Fit the current mixed model
y ~ Node:x1 + ... + Node:xP + re(1 + w1 + ... |id)
with
olmm
, whereNode
is a categorical variable with terminal node labels1
, ...,M
.Test the constancy of the fixed effects
Node:x1, ...
, separately for each moderatorz1
, ...,zL
in each node1
, ...,M
. This yieldsL
timesM
(possibly Bonferroni corrected)p
-values for rejecting coefficient constancy.If the minimum
p
-value is smaller thanalpha
, then select the node and the variable corresponding to the minimump
-value. Search and incorporate the optimal among the candidate splits in the selected node and variable by exhaustive likelihood search.Else if minimum
p
-value is larger thanalpha
, stop the algorithm and return the current model.
The implemented coefficient constancy tests used for node and variable
selection (step 2) are based on the M-fluctuation tests of Zeileis and
Hornik (2007), using the observation scores of the fitted mixed
model. The observation scores can be extracted by
olmm_estfun
for models fitted with
olmm
. To deal with intra-individual correlations
between such observation scores, the olmm_estfun
function decorrelates the observation scores. In cases of unbalanced
data, the pre-decorrelation method requires imputation. nimpute
gives the number of times the coefficient constancy tests are repeated
in each iteration. The final p
-values are then the averages of
the repetations.
The algorithm combines the splitting technique of Zeileis (2008) with the technique of Hajjem et. al (2011) and Sela and Simonoff (2012) to incorporate regression trees into mixed models.
For the exhaustive search, the algorithm implements a number of split
point reduction methods to decrease the computational complexity. See
the arguments maxnomsplit
, maxordsplit
and
maxnumsplit
. By default, the algorithm also uses the
approximative search model approach proposed in Burgin and Ritschard
(2017). To disable this option to use the original algorithm, set
fast = FALSE
in tvcolmm_control
.
Special attention is given to varying intercepts, i.e. the terms that account for the direct effects of the moderators. A common specification is
y ~ -1 + vc(z1, ..., zL, by = x1 + ... + xP, intercept = TRUE) + re(1 + w1 + ... |id)
Doing so replaces the globale intercept by local intercepts. As mentioned, if a varying intercepts are desired, we recommend to always remove the global intercept.
Value
An object of class tvcm
Author(s)
Reto Burgin
References
Zeileis, A., T. Hothorn, and K. Hornik (2008). Model-Based Recursive Partitioning. Journal of Computational and Graphical Statistics, 17(2), 492–514.
Zeileis A., Hornik K. (2007), Generalized M-Fluctuation Tests for Parameter Instability, Statistica Neerlandica, 61(4), 488–508.
Burgin R. and Ritschard G. (2015), Tree-Based Varying Coefficient Regression for Longitudinal Ordinal Responses. Computational Statistics & Data Analysis, 86, 65–80.
Burgin, R. and G. Ritschard (2017), Coefficient-Wise Tree-Based Varying Coefficient Regression with vcrpart. Journal of Statistical Software, 80(6), 1–33.
Sela R. and J. S. Simonoff (2012). RE-EM trees: A Data Mining Approach for Longitudinal and Clustered data, Machine Learning 86(2), 169–207.
A. Hajjem, F. Bellavance and D. Larocque (2011), Mixed Effects Regression Trees for Clustered Data, Statistics & Probability Letters 81(4), 451–459.
See Also
tvcm_control
, tvcm-methods
,
tvcm-plot
, fvcolmm
,
olmm
Examples
## ------------------------------------------------------------------- #
## Example: Moderated effect effect of unemployment
##
## Here we fit a varying coefficient ordinal linear mixed on the
## synthetic ordinal longitudinal data 'unemp'. The interest is whether
## the effect of unemployment 'UNEMP' on happiness 'GHQL' is moderated
## by 'AGE', 'FISIT', 'GENDER' and 'UEREGION'. 'FISIT' is the only true
## moderator. For the the partitioning we coefficient constancy tests,
## as described in Burgin and Ritschard (2015)
## ------------------------------------------------------------------- #
data(unemp)
## fit the model
model.UE <-
tvcolmm(GHQL ~ -1 +
vc(AGE, FISIT, GENDER, UEREGION, by = UNEMP, intercept = TRUE) +
re(1|PID), data = unemp)
## diagnosis
plot(model.UE, "coef")
summary(model.UE)
splitpath(model.UE, steps = 1, details = TRUE)