R: Structure for Storing the Best Fit Amongst Multiple NMF Runs

NMFfitX1-class {NMF} | R Documentation

## Structure for Storing the Best Fit Amongst Multiple NMF Runs

### Description

This class is used to return the result from a multiple run of a single NMF algorithm performed with function `nmf` with the – default – option `keep.all=FALSE` (cf. `nmf`).

### Details

It extends both classes `NMFfitX` and `NMFfit`, and stores a the result of the best fit in its `NMFfit` structure.

Beside the best fit, this class allows to hold data about the computation of the multiple runs, such as the number of runs, the CPU time used to perform all the runs, as well as the consensus matrix.

Due to the inheritance from class `NMFfit`, objects of class `NMFfitX1` can be handled exactly as the results of single NMF run – as if only the best run had been performed.

### Slots

consensus

  object of class `matrix` used to store the consensus matrix based on all the runs.

nrun

  an `integer` that contains the number of runs performed to compute the object.

rng1

  an object that contains RNG settings used for the first run. See `getRNG1`.

### Methods

consensus

  `signature(object = "NMFfitX1")`: The result is the matrix stored in slot ‘consensus’. This method returns `NULL` if the consensus matrix is empty.

fit

  `signature(object = "NMFfitX1")`: Returns the model object associated with the best fit, amongst all the runs performed when fitting `object`.

  Since `NMFfitX1` objects only hold the best fit, this method simply returns the NMF model fitted by `object` – that is stored in slot ‘fit’.

getRNG1

  `signature(object = "NMFfitX1")`: Returns the RNG settings used to compute the first of all NMF runs, amongst which `object` was selected as the best fit.

minfit

  `signature(object = "NMFfitX1")`: Returns the fit object associated with the best fit, amongst all the runs performed when fitting `object`.

  Since `NMFfitX1` objects only hold the best fit, this method simply returns `object` coerced into an `NMFfit` object.

nmf.equal

  `signature(x = "NMFfitX1", y = "NMFfitX1")`: Compares the NMF models fitted by multiple runs, that only kept the best fits.

nrun

  `signature(object = "NMFfitX1")`: Returns the number of NMF runs performed, amongst which `object` was selected as the best fit.

show

  `signature(object = "NMFfitX1")`: Show method for objects of class `NMFfitX1`

### See Also

Other multipleNMF: `NMFfitX-class`, `NMFfitXn-class`

### Examples

    # generate a synthetic dataset with known classes
    n <- 20; counts <- c(5, 2, 3);
    V <- syntheticNMF(n, counts)

    # get the class factor
    groups <- V$pData$Group

    # perform multiple runs of one algorithm, keeping only the best fit (default)
    #i.e.: the implicit nmf options are .options=list(keep.all=FALSE) or .options='-k'
    res <- nmf(V, 3, nrun=3)
    res

    # compute summary measures
    summary(res)
    # get more info
    summary(res, target=V, class=groups)

    # show computational time
    runtime.all(res)

    # plot the consensus matrix, as stored (pre-computed) in the object
    ## Not run:  consensusmap(res, annCol=groups)

[Package NMF version 0.20.6 Index]