cshell                 package:e1071                 R Documentation

_F_u_z_z_y _C-_S_h_e_l_l _C_l_u_s_t_e_r_i_n_g

_D_e_s_c_r_i_p_t_i_o_n:

     The data given by `x' is clustered by the fuzzy c-shell algorithm.

     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 `dist' is "euclidean", the distance between the cluster center
     and the data points is the Euclidean distance (ordinary kmeans
     algorithm). If "manhattan", the distance between the cluster
     center and the data points is the sum of the absolute values of
     the distances of the coordinates.

     If `method' is "cshell", then we have the c-shell fuzzy clustering
     method. 

     The parameters `m' defines the degree of fuzzification. It is
     defined for real values greater than 1 and the bigger it is the
     more fuzzy the membership values of the clustered data points are.

     The parameter `radius' is by default set to 0.2 for every cluster.

_U_s_a_g_e:

     cshell (x, centers, iter.max=100, verbose=FALSE, dist="euclidean",
             method="cshell", m=2, radius = NULL)

_A_r_g_u_m_e_n_t_s:

       x: Data matrix

 centers: Number of clusters or initial values for cluster centers

iter.max: Maximum number of iterations

 verbose: If TRUE, make some output during learning

    dist: If "euclidean", the mean square error, if "manhattan ", the
          mean absolute error is computed

  method: If "cshell", then we have the c-shell fuzzy clustering method

       m: The degree of fuzzification. It is defined for values greater
          than 1

  radius: The radius of resulting clusters

_V_a_l_u_e:

     `cshell' returns an object of class "fclust". 

 centers: The final cluster centers.

 cluster: Vector containing the indices of the clusters where the data
          points are assigned to. The maximum membership value of a
          point is considered for partitioning it to a cluster.

    size: The number of data points in each cluster.

    dist: The distance measure used.

       m: The degree of fuzzification.

  member: a matrix with the membership values of the data points to the
          clusters.

withinss: Returns the sum of square distances within the clusters.

learning: a list with elements

          _n_c_e_n_t_e_r_s The number of the centers,

          _i_n_i_t_c_e_n_t_e_r_s The initial cluster centers, and 

          _i_t_e_r The number of iterations performed.

          _r_a_d_i_u_s Returns the radius of the clusters.

    call: Returns a call in which all of the arguments are specified by
          their names.

_A_u_t_h_o_r(_s):

     Evgenia Dimitriadou

_R_e_f_e_r_e_n_c_e_s:

     Rajesh N. Dave. Fuzzy Shell-Clustering and Applications to Circle
     Detection in Digital Images. Int. J. of General Systems, Vol. 16,
     pp. 343-355, 1996.

_S_e_e _A_l_s_o:

     `plot.fclust'

_E_x_a_m_p_l_e_s:

     # a 2-dimensional example
     x<-rbind(matrix(rnorm(50,sd=0.3),ncol=2),
              matrix(rnorm(50,mean=1,sd=0.3),ncol=2))
     cl<-cshell(x,2,20,verbose=TRUE,method="cshell",m=2)
     print(cl)
     plot(cl,x)

