compareARI {coseq} | R Documentation

## Pairwise comparisons of ARI values among a set of clustering partitions

### Description

Provides the adjusted rand index (ARI) between pairs of clustering paritions.

### Usage

    compareARI(object, ...)

    ## S4 method for signature 'coseqResults'
    compareARI(
      object,
      K = NULL,
      parallel = FALSE,
      BPPARAM = bpparam(),
      plot = TRUE,
      ...
    )

    ## S4 method for signature 'matrix'
    compareARI(object, parallel = FALSE, BPPARAM = bpparam(), plot = TRUE, ...)

    ## S4 method for signature 'data.frame'
    compareARI(object, parallel = FALSE, BPPARAM = bpparam(), plot = TRUE, ...)

### Arguments

`object` | Object of class `coseqResults` or `RangedSummarizedExperiment`, or alternatively a n x M `data.frame` or `matrix` containing the clustering partitions for M different models
`...` | Additional optional parameters for corrplot
`K` | If `NULL`, pairwise ARI values will be calculated among every model in object `x`. Otherwise, `K` provides a vector of cluster numbers identifying a subset of models in `x`.
`parallel` | If `FALSE`, no parallelization. If `TRUE`, parallel execution using BiocParallel (see next argument `BPPARAM`). Note that parallelization is unlikely to be helpful unless the number of observations n in the clustering partitions or the number of models M are very large.
`BPPARAM` | Optional parameter object passed internally to `bplapply` when `parallel=TRUE`. If not specified, the parameters last registered with `register` will be used.
`plot` | If `TRUE`, provide a heatmap using corrplot to visualize the calculated pairwise ARI values.

### Value

Matrix of adjusted rand index values calculated between each pair of models.

### Author(s)

Andrea Rau

### Examples

    ## Simulate toy data, n = 300 observations
    set.seed(12345)
    countmat <- matrix(runif(300*4, min=0, max=500), nrow=300, ncol=4)
    countmat <- countmat[which(rowSums(countmat) > 0),]
    conds <- rep(c("A","B","C","D"), each=2)

    ## Run the Normal mixture model for K = 2,3,4
    run_arcsin <- coseq(object=countmat, K=2:4, iter=5, transformation="arcsin",
                        model="Normal", seed=12345)
    run_arcsin

    ## Plot and summarize results
    plot(run_arcsin)
    summary(run_arcsin)

    ## Compare ARI values for all models (no plot generated here)
    ARI <- compareARI(run_arcsin, plot=FALSE)

    ## Compare ICL values for models with arcsin and logit transformations
    run_logit <- coseq(object=countmat, K=2:4, iter=5, transformation="logit",
                       model="Normal")
    compareICL(list(run_arcsin, run_logit))

    ## Use accessor functions to explore results
    clusters(run_arcsin)
    likelihood(run_arcsin)
    nbCluster(run_arcsin)
    ICL(run_arcsin)

    ## Examine transformed counts and profiles used for graphing
    tcounts(run_arcsin)
    profiles(run_arcsin)

    ## Run the K-means algorithm for logclr profiles for K = 2,..., 20
    run_kmeans <- coseq(object=countmat, K=2:20, transformation="logclr",
                        model="kmeans")
    run_kmeans

[Package coseq version 1.18.0 Index]