circMclust               package:edci               R Documentation

_C_i_r_c_u_l_a_r _C_l_u_s_t_e_r_i_n_g

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

     Computation of cluster center points for circular regression data.
     A cluster method based on redescending M-estimators is used.

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

       circMclust(datax, datay, bw,
                  method="const", prec=4,
                  minsx=min(datax),            maxsx=max(datax), nx=10,
                  minsy=min(datay),            maxsy=max(datay), ny=10,
                  minsr=0.01*max(datax,datay),
                  maxsr=(max(datax,datay)-min(datax,datay)), nr=10,
                  nsc=5,         nc=NULL, 
                  minsd=NULL,    maxsd=NULL,
                  brminx=minsx,  brmaxx=maxsx,
                  brminy=minsy,  brmaxy=maxsy,
                  brminr=minsr,  brmaxr=maxsr,
                  brmaxit=1000)

       plot.circMclust(x, datax, datay,
                       ccol="black", clty=1, clwd=3, ...)

       print.circMclust(x, ...)

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

datax, datay: numerical vectors of coordinates of the observations.

      bw: positive number. Bandwidth for the cluster method.

  method: optional string. Method of choosing starting values for
          maximization. Possible values are:

             *  "const": a constant number of circles is used. By
                default, 'nx'*'ny' equidistant midpoints within the
                range of the observations with 'nr' different radiuses
                are uses as starting circles. The domain of the
                midpoints and radiuses can optionally be given by
                ['minsx','maxsx'], ['minsy','maxsy'], and
                ['minsr','maxsr'].

             *  "all": every circle through any three observations is
                used.

             *  "prob": Clusters are searched iteratively with randomly
                chosen starting circles until either no new clusters
                are found (default), or until 'nc' clusters are found.
                The precision of distinguishing the clusters can be
                tuned with the parameter 'prec'. In each iteration 'nc'
                times a circle through three randomly chosen
                observations is used as starting value. With the
                parameters 'minsd' and 'maxsd' the minimal and maximal
                distance of these observations could be limited.

  nx, ny: optional positive integer. Number of starting midpoints, if
          'method="const"' is chosen.

      nr: optional positive integer. Number of starting radiuses, if
          'method="const"' is chosen.

    prec: optional positive integer. Tuning parameter for
          distinguishing different clusters, which is passed to
          'deldupMclust'.

minsx, maxsx, minsy, maxsy, minsr: optional numbers determining the
          domain of starting midpoints and the range of radiuses, if
          'method="const"' is chosen.

   maxsr: optional number determining the maximum radius used as
          starting value. Note, that this is valid for all 'method's
          while 'minsx', 'maxsx', 'minsy', 'maxsy', and 'minsr' are
          only used by 'method="const"'.

     nsc: optional positive integer. Number of starting circles in each
          iteration, if 'method="prob"' is chosen.

      nc: optional positive integer. Number of clusters to search, if
          'method="prob"' is chosen. Note that, if 'nc' is to large,
          e.g. 'nc' clusters cannot be found, the function does not
          terminate. Attention! Using Windows, the routine cannot even
          be breaked manually in this case!

minsd, maxsd: optional positive numbers. Minimal and maximal distance
          of starting points which are used, if 'method="prob"' is
          chosen.

brminx, brmaxx, brminy, brmaxy, brminr, brmaxr: optional numbers. The
          maximization is stopped, if the midpoint leaves the domain
          ['brminx','brmaxx']x['brminy','brmaxy'] or if the radius
          leaves ['brminr','brmaxr'].

 brmaxit: optional positive integer. Since the maximization could be
          very slow in some cases depending on the starting value, the
          maximization is stopped after 'brmaxit' iterations.

       x: object returned by 'circMclust'

ccol,clty,clwd: optional graphic parameters used for plotting the
          circles.

     ...: Additional parameters passed to 'plot'.

_D_e_t_a_i_l_s:

     'circMclust' implements a cluster method using local maxima  of
     redescending M-estimators for the case of circular regression.
     This method is based on a method introduced by Mller and Garlipp
     in 2003 (see references).

     See also 'bestMclust', 'projMclust', and 'envMclust' for choosing
     the 'real' clusters out of the found.

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

     Return value is a numerical matrix containing one row for every
     found cluster circle. The columns "cx" and "cy" are their
     midpoints and "r" are the radiuses.

     The columns "value" and "count" give the value of the objective
     function and the number, how often they are found.

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

     Tim Garlipp, garlipp@mathematik.uni-oldenburg.de

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

     Mller, C.H., Garlipp, T. (2003) Simple consistent cluster methods
     based on redescending M-estimators with an application to edge
     identification in images, to appear in _JMVA_.

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

     'bestMclust', 'projMclust', 'envMclust', 'deldupMclust'

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

       z <- (1:100 * pi)/50
       x <- c(sin(z) * 10 + 20,sin(z) * 30 + 80)+rnorm(200,0,2)
       y <- c(cos(z) * 10 + 20,cos(z) * 30 + 80)+rnorm(200,0,2)

       circ <- circMclust(x,y,5,method="prob",prec=1,nsc=20,minsd=10,maxsd=40)
       bestMclust(circ,2)
       plot(bestMclust(circ,2),x,y)

