FLXMCLmultinom: Mixtures of Multinomial Regression Models

Description Usage Arguments Value See Also Examples

View source: R/FLXMCLmultinom.R

Description

This is a model driver for flexmix implementing mixtures of Multinomial Regression Models.

Usage

1
2
3
4
5
FLXMCLmultinom(formula = . ~ ., censored = FALSE, ...)

## S4 method for signature 'FLXMCLmultinom'
FLXgetModelmatrix(model, data, formula, lhs = TRUE,
  ...)

Arguments

formula

A formula which is interpreted relative to the formula specified in the call to flexmix using update.formula. Only the left-hand side (response) of the formula is used. Default is to use the original flexmix model formula.

censored

If the response is a matrix with more than two columns, interpret the entries as one for possible classes, zero for impossible classes, rather than as counts (see multinom).

...

Further arguments to and from other methods, especially multinom.

Value

Returns an object of class FLXMCLmultinom inheriting from FLXMCL.

See Also

Other mixtures multinom: FLXMCL-class

Other mixtures multinom: FLXMCL-class

Examples

 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
library(benchData)
data <- flashData(1000)
data$x <- scale(data$x)
grid <- expand.grid(x.1=seq(-6,6,0.2), x.2=seq(-4,4,0.2))

cluster <- kmeans(data$x, center = 2)$cluster
model <- FLXMCLmultinom(trace = FALSE)
fit <- flexmix(y ~ ., data = as.data.frame(data), concomitant = FLXPmultinom(~ x.1 + x.2), model = model, cluster = cluster)

## prediction for single component models without aggregation
pred.grid <- predict(fit, newdata = grid)
image(seq(-6,6,0.2), seq(-4,4,0.2), matrix(pred.grid[[1]][,1], length(seq(-6,6,0.2))))
contour(seq(-6,6,0.2), seq(-4,4,0.2), matrix(pred.grid[[1]][,1], length(seq(-6,6,0.2))), add = TRUE)
points(data$x, pch = as.character(data$y))

image(seq(-6,6,0.2), seq(-4,4,0.2), matrix(pred.grid[[2]][,1], length(seq(-6,6,0.2))))
contour(seq(-6,6,0.2), seq(-4,4,0.2), matrix(pred.grid[[2]][,1], length(seq(-6,6,0.2))), add = TRUE)
points(data$x, pch = as.character(data$y))

## prediction with aggregation depending on membership in mixture components
pred.grid <- mypredict(fit, newdata = grid, aggregate = TRUE)
image(seq(-6,6,0.2), seq(-4,4,0.2), matrix(pred.grid[[1]][,1], length(seq(-6,6,0.2))))
contour(seq(-6,6,0.2), seq(-4,4,0.2), matrix(pred.grid[[1]][,1], length(seq(-6,6,0.2))), add  = TRUE)
points(data$x, pch = as.character(data$y))

## local membership
loc.grid <- prior(fit, newdata = grid)
contour(seq(-6,6,0.2), seq(-4,4,0.2), matrix(loc.grid[,1], length(seq(-6,6,0.2))), add  = TRUE)

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