x
is clustered by 4 fuzzy algorithms based on
the scatter matrices computation.
If centers
is a matrix, its rows are taken as the initial cluster
centers. If centers
is an integer, centers
rows
of x
are randomly chosen as initial values.
The algorithm stops when the maximum number of iterations (given by
iter.max
) is reached. If verbose
is TRUE, it displays for each iteration the number
the value of the objective function.
If method
is "ad", then we have the Adaptive distances method, if
"mtv" the Minimum total volume method, if "sand" the Sum of all
normalized determinants method and if "mlm" the Maximum likelihood
method (Product of Determinants). Note that all these algorithms are
adapted for a fuzzification parameter of a value 2.
theta
is by default 1.0 for every cluster. The relative volumes
of the clusters are constrained a priori by these constants. An
inappropriate choice can lead to a bad clustering. The Maximum
likelihood method does not need this parameter.
scaclust(x, centers, iter.max=100, verbose=FALSE, method="ad",
theta = NULL)
scaclust
returns an object of class "fclust".plot.fclust
## a 2-dimensional example
x<-rbind(matrix(rnorm(100,sd=0.3),ncol=2),
matrix(rnorm(100,mean=1,sd=0.3),ncol=2))
cl<-scaclust(x,2,20,verbose=TRUE,method="ad")
print(cl)
plot(cl,x)
Run the code above in your browser using DataLab