Learn R Programming

biotools (version 2.1)

tocher: Tocher's Clustering

Description

tocher performs the Tocher (Rao, 1952) optimization clustering from a distance matrix.

Usage

tocher(d, algorithm = c("original", "sequential"))

Arguments

d
an object of class "dist".
algorithm
a character indicating the algorithm to be used for clustering objects. It must be one of the two: "original" (default) or "sequential". The latter is the method proposed by Vasconcelos et al. (2007), and sometimes called "m

Value

  • A list of
  • clustersa list of length k (the number of clusters), containing the labels of the objects in d for each cluster.
  • classa numeric vector indicating the class (the cluster) of each object in d.
  • criteriona numeric vector containing the clustering criteria - the greatest amongst the smallest distances involving each object in d. If algorithm = "original", this vector contains an unique value, i.e., the same criterion is used for every clustering step.
  • distClusta matrix of distances within (diagonal) and between (off-diagonal) clusters.
  • dthe input object.

Warning

Clustering a large number of objects (say 300 or more) can be time demanding.

References

Cruz, C.D.; Ferreira, F.M.; Pessoni, L.A. (2011) Biometria aplicada ao estudo da diversidade genetica. Visconde do Rio Branco: Suprema. Rao, R.C. (1952) Advanced statistical methods in biometric research. New York: John Wiley & Sons. Sharma, J.R. (2006) Statistical and biometrical techniques in plant breeding. Delhi: New Age International. Silva, A.R. & Dias, C.T.S. (2013) A cophenetic correlation coefficient for Tocher's method. Pesquisa Agropecuaria Brasileira, 48:589-596. Vasconcelos, E.S.; Cruz, C.D.; Bhering, L.L.; Resende Junior, M.F.R. (2007) Alternative methodology for the cluster analysis. Pesquisa Agropecuaria Brasileira, 42:1421-1428.

See Also

dist, D2.dist, coph.tocher, distClust, hclust

Examples

Run this code
# example 1
data(garlicdist)
(garlic <- tocher(garlicdist))
garlic$distClust  # cluster distances

# example 2
data(USArrests)
(usa <- tocher(dist(USArrests)))
usa$distClust

# using the sequential algorithm
(usa2 <- tocher(dist(USArrests), algorithm = "sequential"))
usa2$criterion

# example 3
data(eurodist)
(euro <- tocher(eurodist))
euro$distClust

# End (not run)

Run the code above in your browser using DataLab