Learn R Programming

flexclust (version 1.3-4)

stepFlexclust: Run Flexclust Algorithms Repeatedly

Description

Runs clustering algorithms repeatedly for different numbers of clusters and returns the minimum within cluster distance solution for each.

Usage

stepFlexclust(x, k, nrep=3, verbose=TRUE, FUN = kcca, drop=TRUE, group=NULL, simple=FALSE, save.data=FALSE, seed=NULL, multicore=TRUE, ...)
stepcclust(...)
"plot"(x, y, type=c("barplot", "lines"), totaldist=NULL, xlab=NULL, ylab=NULL, ...)
"getModel"(object, which=1)

Arguments

x, ...
passed to kcca or cclust.
k
A vector of integers passed in turn to the k argument of kcca
nrep
For each value of k run kcca nrep times and keep only the best solution.
FUN
Cluster function to use, typically kcca or cclust.
verbose
If TRUE, show progress information during computations.
drop
If TRUE and K is of length 1, then a single cluster object is returned instead of a "stepFlexclust" object.
group
An optional grouping vector for the data, see kcca for details.
simple
Return an object of class kccasimple?
save.data
Save a copy of x in the return object?
seed
If not NULL, a call to set.seed() is made before any clustering is done.
multicore
If TRUE, use mclapply() from package parallel for parallel processing.
y
Not used.
type
Create a barplot or lines plot.
totaldist
Include value for 1-cluster solution in plot? Default is TRUE if K contains 2, else FALSE.
xlab, ylab
Graphical parameters.
object
Object of class "stepFlexclust".
which
Number of model to get. If character, interpreted as number of clusters.

Details

stepcclust is a simple wrapper for stepFlexclust(...,FUN=cclust).

Examples

Run this code
data("Nclus")
plot(Nclus)

## multicore off for CRAN checks
cl1 = stepFlexclust(Nclus, k=2:7, FUN=cclust, multicore=FALSE)
cl1

plot(cl1)

# two ways to do the same:
getModel(cl1, 4)
cl1[[4]]

opar=par("mfrow")
par(mfrow=c(2,2))
for(k in 3:6){
  image(getModel(cl1, as.character(k)), data=Nclus)
  title(main=paste(k, "clusters"))
}
par(opar)

Run the code above in your browser using DataLab