kmeansStepEllbowAIC: stepwise modelselection of k-means cluster using AIC and...

Description Usage Arguments Author(s) References Examples

View source: R/kmeansStepEllbowAIC.R

Description

stepwise modelselection of k-means cluster using AIC and Ellbow-Method

Usage

1
kmeansStepEllbowAIC(x, centers = 1, iter.max = 10, nstart = 10, algorithm = c("Hartigan-Wong", "Lloyd", "Forgy", "MacQueen"), trace = FALSE)

Arguments

x
centers
iter.max
nstart
algorithm
trace

Author(s)

Markus Mayer

References

http://sherrytowers.com/2013/10/24/k-means-clustering/

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
29
30
31
32
33
34
##---- Should be DIRECTLY executable !! ----
##-- ==>  Define data, use random,
##--	or do  help(data=index)  for the standard data sets.

## The function is currently defined as
function (x, centers = 1, iter.max = 10, nstart = 10, algorithm = c("Hartigan-Wong", 
    "Lloyd", "Forgy", "MacQueen"), trace = FALSE) 
{
    firstAIC <- kmeansAIC(kmeans(x, centers, iter.max, nstart, 
        algorithm, trace))
    centers <- centers + 1
    secondAIC <- kmeansAIC(kmeans(x, centers, iter.max, nstart, 
        algorithm, trace))
    centers <- centers + 1
    thirdAIC <- kmeansAIC(kmeans(x, centers, iter.max, nstart, 
        algorithm, trace))
    centers <- centers + 1
    fourthAIC <- kmeansAIC(kmeans(x, centers, iter.max, nstart, 
        algorithm, trace))
    el_first <- (firstAIC - secondAIC)/(secondAIC - thirdAIC)
    el_second <- (secondAIC - thirdAIC)/(thirdAIC - fourthAIC)
    while (el_second > el_first) {
        firstAIC <- secondAIC
        secondAIC <- thirdAIC
        thirdAIC <- fourthAIC
        centers <- centers + 1
        fourthAIC <- kmeansAIC(kmeans(x, centers, iter.max, nstart, 
            algorithm, trace))
        el_first <- el_second
        el_second <- (secondAIC - thirdAIC)/(thirdAIC - fourthAIC)
    }
    return(list(AIC = secondAIC, kmeans = kmeans(x, centers = centers - 
        2, iter.max, nstart, algorithm, trace)))
  }

kmeansstep documentation built on May 2, 2019, 5 p.m.