| longitree | R Documentation |
Constructs a single decision tree for longitudinal data. The method evaluates both the main effect of a covariate and its interaction with time, incorporating a weighting mechanism to balance the two effects. Three single-tree construction procedures (ST1, ST2, ST3) are available; see Details. For the underlying methodology, refer to Obata and Sugimoto (2026).
longitree(
formula,
time,
random,
weight = "w",
data,
alpha = "no",
gamma = "no",
cv = "no",
maxdepth = 5,
minbucket = 5,
minsplit = 20,
xval = 10
)
## S3 method for class 'longitree'
summary(object, ...)
## S3 method for class 'longitree'
print(x, ...)
## S3 method for class 'longitree'
predict(object, ...)
## S3 method for class 'longitree'
plot(x, ...)
formula |
A formula specifying the model.
The response variable should be on the left side and covariates on the
right side. Use |
time |
Character string giving the column name of the time variable. All individuals are assumed to be observed at the same time points. |
random |
Character string giving the column name of the random effect (subject identifier). |
weight |
Weight for balancing the main effect of a covariate and
its interaction with time. A value in
|
data |
A data frame containing the variables in |
alpha |
Significance level used as the stopping rule for tree
growth. A smaller value produces a more conservative (smaller) tree.
Specify a numeric value or |
gamma |
Complexity parameter for pruning. A larger value prunes
more aggressively, yielding a smaller and simpler tree; a smaller
value retains more branches. Specify a numeric value or |
cv |
Set |
maxdepth |
Maximum depth of the tree (default 5). |
minbucket |
Minimum number of subjects in a terminal node (default 5). |
minsplit |
Minimum number of subjects required to attempt a split (default 20). |
xval |
Number of cross-validation folds (default 10). Used to
compute the cross-validated coefficient of determination
( |
object |
A |
... |
Additional arguments passed to |
x |
A |
Exactly one of alpha, gamma, or cv must be specified.
Specifying more than one will result in an error. These correspond to the
three single-tree construction procedures:
cv = "yes")Tree growth, pruning, and final tree selection via cross-validation.
alpha)Tree growth with a significance threshold. No pruning or final tree selection via cross-validation.
gamma)Tree growth followed by pruning with a pre-specified complexity parameter. No final tree selection via cross-validation.
Since the time variable is not used as a splitting variable, each terminal node (leaf) contains the full longitudinal responses for every subject assigned to it, allowing direct evaluation of longitudinal trajectories within each leaf.
An object of class "longitree". Use
summary.longitree, predict.longitree,
or plot.longitree to inspect the results.
summary(longitree): Print a brief summary of a longitree
object.
print(longitree): Print method (calls summary).
predict(longitree): Extract predicted values and terminal node
assignments from a longitree object. Returns a data frame
with columns predict (predicted values) and
terminalnode (terminal node assignments).
plot(longitree): Plot a longitree object.
A convenience wrapper around treeplot.
Obata, R. and Sugimoto, T. (2026). A decision tree analysis for longitudinal measurement data and its applications. Advances in Data Analysis and Classification. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1007/s11634-025-00665-2")}
treeplot, longitrees
data(ltreedata)
# ST1: tree construction via cross-validation
result_st1 <- longitree(y ~ ., time = "time", random = "subject",
weight = 0.7, data = ltreedata, cv = "yes")
summary(result_st1)
predict(result_st1)
plot(result_st1)
# ST2: tree growth with a significance threshold
result_st2 <- longitree(y ~ ., time = "time", random = "subject",
weight = 0.1, data = ltreedata, alpha = 0.05)
summary(result_st2)
predict(result_st2)
plot(result_st2)
# ST3: pruning with a complexity parameter
result_st3 <- longitree(y ~ ., time = "time", random = "subject",
weight = "w", data = ltreedata, gamma = 3)
summary(result_st3)
predict(result_st3)
plot(result_st3)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.