M_ABC: Multi-source Aggregating Bundles of Clusters (M-ABC),...

View source: R/M_ABC.R

M_ABCR Documentation

Multi-source Aggregating Bundles of Clusters (M-ABC), C++-accelerated

Description

Extends the single-source ABC algorithm of \insertCiteAmaratunga2008MosaiClusteR to K \ge 2 sources: runs ABCpp.SingleInMultiple per source, row-stacks the per-iteration label matrices, and builds a single consensus dissimilarity via f.clustABC.MultiSource (C++ kernel when available).

Usage

M_ABC(
  List,
  distmeasure = rep("euclidean", length(List)),
  weighting = rep("var", length(List)),
  normalize = rep(FALSE, length(List)),
  gr = c(),
  bag = rep(TRUE, length(List)),
  numsim = 1000,
  numvar = rep(100, length(List)),
  linkage = rep("ward.D2", length(List)),
  NC = NULL,
  dissimilarity = "mabc",
  final_linkage = "ward",
  alpha = 0.625,
  mds = FALSE,
  nfeat = NULL,
  nugget_type = "between",
  nugget_args = list()
)

Arguments

List

A list of K data matrices over the same objects, objects (samples) in rows and features in columns.

distmeasure, weighting, normalize, bag, numvar, linkage

Per-source vectors (recycled to K) forwarded to ABCpp.SingleInMultiple.

gr

Unused; kept for compatibility.

numsim

Iterations per source.

NC

Base-cluster count per source (NULL = data-driven).

dissimilarity

Consensus dissimilarity, "mabc" or "abc".

final_linkage, alpha

Final clustering controls.

mds

Logical; MDS of the consensus dissimilarities.

nfeat

Feature-subsample size forwarded to ABCpp.SingleInMultiple (NULL = \lfloor\sqrt{G}\rfloor).

nugget_type, nugget_args

Forwarded to the nugget weighting.

Value

A list of class "M_ABC" with DistM and Clust.

Data-nugget weighting

Set weighting = "nugget" (per source, recycled) to weight features by the data-nugget between-group variance instead of the classic variance; see ABCpp.SingleInMultiple and create_data_nuggets.

References

\insertAllCited

See Also

ABCpp.SingleInMultiple, f.clustABC.MultiSource, create_data_nuggets

Examples

data(mosaic_toy)
fit <- M_ABC(mosaic_toy$List, numsim = 50, NC = 3,
               weighting = c("var", "nugget"))
table(stats::cutree(stats::as.hclust(fit$Clust), 3))

MosaiClusteR documentation built on Oct. 25, 2026, 1:08 a.m.