nmf.equal: Testing Equality of NMF Models

nmf.equalR Documentation

Testing Equality of NMF Models

Description

The function nmf.equal tests if two NMF models are the same, i.e. they contain – almost – identical data: same basis and coefficient matrices, as well as same extra parameters.

Usage

  nmf.equal(x, y, ...)

  ## S4 method for signature 'NMF,NMF'
nmf.equal(x, y, identical = TRUE,
    ...)

  ## S4 method for signature 'list,list'
nmf.equal(x, y, ..., all = FALSE,
    vector = FALSE)

Arguments

x

an NMF model or an object that is associated with an NMF model, e.g. the result from a fit with nmf.

y

an NMF model or an object that is associated with an NMF model, e.g. the result from a fit with nmf.

identical

a logical that indicates if the comparison should be made using the function identical (TRUE) or all.equal (FALSE). See description for method nmf.equal,NMF,NMF.

...

extra arguments to allow extension, and passed to subsequent calls

all

a logical that indicates if all fits should be compared separately or only the best fits

vector

a logical, only used when all=TRUE, that indicates if all fits must be equal for x and y to be declared equal, or if one wants to return the result of each comparison in a vector.

Details

nmf.equal compares two NMF models, and return TRUE iff they are identical acording to the function identical when identical=TRUE, or equal up to some tolerance acording to the function all.equal. This means that all data contained in the objects are compared, which includes at least the basis and coefficient matrices, as well as the extra parameters stored in slot ‘misc’.

If extra arguments are specified in ..., then the comparison is performed using all.equal, irrespective of the value of argument identical.

Methods

nmf.equal

signature(x = "NMF", y = "NMF"): Compares two NMF models.

Arguments in ... are used only when identical=FALSE and are passed to all.equal.

nmf.equal

signature(x = "NMFfit", y = "NMF"): Compares two NMF models when at least one comes from a NMFfit object, i.e. an object returned by a single run of nmf.

nmf.equal

signature(x = "NMF", y = "NMFfit"): Compares two NMF models when at least one comes from a NMFfit object, i.e. an object returned by a single run of nmf.

nmf.equal

signature(x = "NMFfit", y = "NMFfit"): Compares two fitted NMF models, i.e. objects returned by single runs of nmf.

nmf.equal

signature(x = "NMFfitX", y = "NMF"): Compares two NMF models when at least one comes from multiple NMF runs.

nmf.equal

signature(x = "NMF", y = "NMFfitX"): Compares two NMF models when at least one comes from multiple NMF runs.

nmf.equal

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

nmf.equal

signature(x = "list", y = "list"): Compares the results of multiple NMF runs.

This method either compare the two best fit, or all fits separately. All extra arguments in ... are passed to each internal call to nmf.equal.

nmf.equal

signature(x = "list", y = "missing"): Compare all elements in x to x[[1]].


NMF documentation built on March 31, 2023, 6:55 p.m.