| plot.mob | R Documentation |
plot method for mob objects with
extended facilities for plugging in panel functions.
## S3 method for class 'mob'
plot(x, terminal_panel = node_bivplot, tnex = NULL, ...)
x |
an object of class |
terminal_panel |
a panel function or panel-generating function of
class |
tnex |
a numeric value giving the terminal node extension in relation to the inner nodes. |
... |
further arguments passed to |
This plot method for mob objects simply calls the
plot.BinaryTree method, setting a different terminal_panel
function by default (node_bivplot) and tnex value.
node_bivplot, node_scatterplot,
plot.BinaryTree, mob
set.seed(290875)
if(require("mlbench")) {
## recursive partitioning of a linear regression model
## load data
data("BostonHousing", package = "mlbench")
## and transform variables appropriately (for a linear regression)
BostonHousing$lstat <- log(BostonHousing$lstat)
BostonHousing$rm <- BostonHousing$rm^2
## as well as partitioning variables (for fluctuation testing)
BostonHousing$chas <- factor(BostonHousing$chas, levels = 0:1,
labels = c("no", "yes"))
BostonHousing$rad <- factor(BostonHousing$rad, ordered = TRUE)
## partition the linear regression model medv ~ lstat + rm
## with respect to all remaining variables:
fm <- mob(medv ~ lstat + rm | zn + indus + chas + nox + age + dis +
rad + tax + crim + b + ptratio,
control = mob_control(minsplit = 40), data = BostonHousing,
model = linearModel)
## visualize medv ~ lstat and medv ~ rm
plot(fm)
## visualize only one of the two regressors
plot(fm, tp_args = list(which = "lstat"), tnex = 2)
plot(fm, tp_args = list(which = 2), tnex = 2)
## omit fitted mean lines
plot(fm, tp_args = list(fitmean = FALSE))
## mixed numerical and categorical regressors
fm2 <- mob(medv ~ lstat + rm + chas | zn + indus + nox + age +
dis + rad,
control = mob_control(minsplit = 100), data = BostonHousing,
model = linearModel)
plot(fm2)
## recursive partitioning of a logistic regression model
data("SynthDiabetes", package = "mlbench")
fmSD <- mob(diabetes ~ glucose | pressure + triceps + insulin + mass + age,
data = SynthDiabetes, model = glinearModel,
family = binomial())
## default plot: spinograms with breaks from five point summary
plot(fmSD)
## user-defined breaks (or: alternatively use breaks from hist() via fivenum = FALSE)
plot(fmSD, tp_args = list(breaks = c(0, 100, 125, 150, 175, 200)))
## CD plots instead of spinograms
plot(fmSD, tp_args = list(cdplot = TRUE))
## different smoothing bandwidth
plot(fmSD, tp_args = list(cdplot = TRUE, bw = 15))
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.