multinomModel: Combine Model-based Recursive Partitioning with Multinomial...

Description Usage Arguments Format Details Value References See Also Examples

Description

Combine Model-based Recursive Partitioning with Multinomial Logistic Regression.

Usage

1
2
3
4
5
6
7
8
9
multinomModel

\method{reweight}{multinomModel}(object, weights, ...)

\method{deviance}{multinom}(object, ...)

\method{estfun}{multinom}(x, ...)

predict.multinomModel(object, out = c("class", "posterior"), newdata, ...)

Arguments

object

An object of class "multinomModel" and "multinom", respectively.

weights

A vector of observation weights.

x

An object of class "multinom".

out

Should class labels or posterior probabilities be returned?

newdata

A data.frame of cases to be classified.

...

Further arguments.

Format

An object of class StatModel of length 1.

Details

This page lists all ingredients to combine Multinomial Regression with Model-Based Recursive Partitioning (mob from package party). See the example for how to do that.

multinomModel is an object of class StatModel-class implemented in package modeltools that provides an infra-structure for an unfitted multinom model.

Moreover, methods for multinom and multinomModel objects for the generic functions reweight, deviance, estfun, and predict are provided.

Value

reweight: The re-weighted fitted "multinomModel" object.
deviance: The value of the deviance extracted from object.
estfun: The empirical estimating (or score) function, i.e. the derivatives of the log-likelihood with respect to the parameters, evaluated at the training data.
predict: Either a vector of predicted class labels or a matrix of class posterior probabilities.

References

Zeileis, A., Hothorn, T. and Kornik, K. (2008), Model-based recursive partitioning. Journal of Computational and Graphical Statistics, 17(2) 492–514.

See Also

reweight, deviance, estfun, predict.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
library(benchData)

data <- vData(500)
x <- seq(0,1,0.05)
grid <- expand.grid(x.1 = x, x.2 = x)

fit <- mob(y ~ x.1 + x.2 | x.1 + x.2, data = data, model = multinomModel, trace = FALSE,
control = mob_control(objfun = deviance, minsplit = 200))

## predict posterior probabilities
pred <- predict(fit, newdata = grid, out = "posterior")
post <- do.call("rbind", pred)

image(x, x, matrix(as.numeric(post[,1]), length(x)), xlab = "x.1", ylab = "x.2")
contour(x, x, matrix(as.numeric(post[,1]), length(x)), levels = 0.5, add = TRUE)
points(data$x, pch = as.character(data$y))

## predict node membership
splits <- predict(fit, newdata = grid, type = "node")
contour(x, x, matrix(splits, length(x)), levels = min(splits):max(splits), add = TRUE, lty = 2)

## training error
mean(predict(fit) != data$y)

schiffner/locClass documentation built on May 29, 2019, 3:39 p.m.