Description Usage Arguments Details Value Examples

Input a parametric model and get a model-based tree.

1 2 |

`model` |
a model object. The model can be a parametric model with a binary covariate. |

`data` |
data. If NULL (default) the data from the model object are used. |

`zformula` |
formula describing which variable should be used for partitioning.
Default is to use all variables in data that are not in the model (i.e. |

`control` |
control parameters, see |

`coeffun` |
function that takes the model object and returns the coefficients.
Useful when |

`...` |
additional parameters passed on to model fit such as weights. |

Sometimes the number of participant in each treatment group needs to
be of a certain size. This can be accomplished by setting `control$converged`

.
See example below.

ctree object

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 | ```
if(require("TH.data") & require("survival")) {
## base model
bmod <- survreg(Surv(time, cens) ~ horTh, data = GBSG2, model = TRUE)
survreg_plot(bmod)
## partitioned model
tr <- pmtree(bmod)
plot(tr, terminal_panel = node_pmterminal(tr, plotfun = survreg_plot,
confint = TRUE))
summary(tr)
summary(tr, node = 1:2)
logLik(bmod)
logLik(tr)
## Sometimes the number of participant in each treatment group needs to
## be of a certain size. This can be accomplished using converged
## Each treatment group should have more than 33 observations
ctrl <- ctree_control(lookahead = TRUE)
ctrl$converged <- function(mod, data, subset) {
all(table(data$horTh[subset]) > 33)
}
tr2 <- pmtree(bmod, control = ctrl)
plot(tr2, terminal_panel = node_pmterminal(tr, plotfun = survreg_plot,
confint = TRUE))
summary(tr2[[5]]$data$horTh)
}
if(require("psychotools")) {
data("MathExam14W", package = "psychotools")
## scale points achieved to [0, 100] percent
MathExam14W$tests <- 100 * MathExam14W$tests/26
MathExam14W$pcorrect <- 100 * MathExam14W$nsolved/13
## select variables to be used
MathExam <- MathExam14W[ , c("pcorrect", "group", "tests", "study",
"attempt", "semester", "gender")]
## compute base model
bmod_math <- lm(pcorrect ~ group, data = MathExam)
lm_plot(bmod_math, densest = TRUE)
## compute tree
(tr_math <- pmtree(bmod_math, control = ctree_control(maxdepth = 2)))
plot(tr_math, terminal_panel = node_pmterminal(tr_math, plotfun = lm_plot,
confint = FALSE))
plot(tr_math, terminal_panel = node_pmterminal(tr_math, plotfun = lm_plot,
densest = TRUE,
confint = TRUE))
## predict
newdat <- MathExam[1:5, ]
# terminal nodes
(nodes <- predict(tr_math, type = "node", newdata = newdat))
# response
(pr <- predict(tr_math, type = "pass", newdata = newdat))
# response including confidence intervals, see ?predict.lm
(pr1 <- predict(tr_math, type = "pass", newdata = newdat,
predict_args = list(interval = "confidence")))
}
``` |

Embedding an R snippet on your website

Add the following code to your website.

For more information on customizing the embed code, read Embedding Snippets.