% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/linkbased.r
\name{LinkBasedClustering}
\alias{LinkBasedClustering}
\title{Link-based cluster ensembles}
\usage{
LinkBasedClustering(
  List,
  type = c("data", "dist", "clust"),
  distmeasure = c("tanimoto", "tanimoto"),
  normalize = c(FALSE, FALSE),
  method = c(NULL, NULL),
  clust = "agnes",
  linkage = c("flexible", "flexible"),
  alpha = 0.625,
  nrclusters = c(7, 7),
  gap = FALSE,
  maxK = 15,
  linkBasedMethod = c("cts", "srs", "asrs"),
  decayfactor = 0.8,
  niter = 5,
  linkBasedLinkage = "ward",
  waitingtime = 300,
  file_number = 0,
  executable = FALSE
)
}
\arguments{
\item{List}{A list of data matrices, distance matrices or clustering results.
It is assumed the rows are corresponding with the objects.}

\item{type}{Indicates whether the provided matrices in "List" are either data
matrices, distance matrices or clustering results obtained from the data.
Should be one of "data", "dist" or "clust".}

\item{distmeasure}{A vector of the distance measures to be used on each data
matrix. Should be one of "tanimoto", "euclidean", "jaccard", "hamming".
Defaults to c("tanimoto","tanimoto").}

\item{normalize}{Logical. Indicates whether to normalize the distance matrices
or not, defaults to c(FALSE, FALSE) for two data sets. This is recommended if
different distance types are used. More details on normalization in
\code{Normalization}.}

\item{method}{A method of normalization. Should be one of "Quantile",
"Fisher-Yates", "standardize","Range" or any of the first letters of these
names. Default is c(NULL,NULL) for two data sets.}

\item{clust}{Choice of clustering function (character). Defaults to "agnes".}

\item{linkage}{Choice of inter group dissimilarity (character) for each data
set. Defaults to c("flexible", "flexible") for two data sets.}

\item{alpha}{The parameter alpha to be used in the "flexible" linkage of the
agnes function. Defaults to 0.625 and is only used if the linkage is set to
"flexible".}

\item{nrclusters}{A vector with the number of clusters to cut each base
dendrogram into. If NULL and gap=FALSE, the function stops.}

\item{gap}{Logical. Whether to use the gap statistic to determine the number
of clusters per data set. Defaults to FALSE.}

\item{maxK}{The maximal number of clusters to consider when gap=TRUE.}

\item{linkBasedMethod}{The link-based refinement scheme. One of "cts", "srs"
or "asrs". Defaults to "cts".}

\item{decayfactor}{The decay (confidence) factor used by the refinement scheme.
Defaults to 0.8.}

\item{niter}{The number of iterations for the SimRank-based scheme ("srs").
Defaults to 5.}

\item{linkBasedLinkage}{The linkage used in the final agglomerative clustering
of the refined similarity matrix. Defaults to "ward".}

\item{waitingtime}{Retained for backward compatibility with the external
executable / MATLAB workflow; ignored by the pure-R schemes.}

\item{file_number}{Retained for backward compatibility with the external
executable / MATLAB workflow; ignored by the pure-R schemes.}

\item{executable}{Logical. If TRUE, the refined similarity matrix is computed
by an external executable / MATLAB. The "cts" and "srs" schemes are pure R
and work without an executable. The "asrs" scheme is only available through
the external executable; if executable=FALSE it stops with an informative
message.}
}
\value{
The returned value is a list of two elements:
\item{DistM}{The resulting (refined) distance matrix}
\item{Clust}{The resulting hierarchical clustering}
The value has class 'LinkBased'.
}
\description{
Link-based cluster ensembles combine multiple base clusterings
into a single, refined similarity matrix by exploiting the link structure
between clusters of the ensemble. Three refinement schemes are available:
Connected-Triple-Based Similarity ("cts"), SimRank-Based Similarity ("srs")
and Approximate SimRank-Based Similarity ("asrs"). The refined object-by-object
similarity matrix is turned into a dissimilarity matrix on which a final
agglomerative hierarchical clustering is performed.
}
\details{
Each base clustering of the ensemble is represented as a hard
partition. The clusters of all partitions form the vertices of a weighted
graph; the link weights between clusters are derived from shared objects. The
refined object-by-object similarity is obtained by propagating these
cluster-to-cluster links ("cts", "srs", "asrs"). See Iam-On et al. (2010).
}
\examples{
\dontrun{
data(mosaic_toy)
L <- mosaic_toy$List
res <- LinkBasedClustering(List = L, type = "data",
  distmeasure = c("euclidean", "euclidean"), normalize = c(FALSE, FALSE),
  linkBasedMethod = "cts", decayfactor = 0.8, niter = 5,
  linkBasedLinkage = "ward", nrclusters = c(3, 3))
}
}
\references{
Iam-On, N., Boongoen, T., Garrett, S. and Price, C. (2010). Link-based cluster
ensembles for the combination of multiple clusterings. IEEE Transactions on
Knowledge and Data Engineering, 23(12), 1839-1853.
}
