basiscor {NMF} | R Documentation |
Correlations in NMF Models
Description
basiscor
computes the correlation matrix between
basis vectors, i.e. the columns of its basis
matrix – which is the model's first matrix factor.
profcor
computes the correlation matrix between
basis profiles, i.e. the rows of the coefficient
matrix – which is the model's second matrix factor.
Usage
basiscor(x, y, ...)
profcor(x, y, ...)
Arguments
x |
|
y |
a matrix or an object with suitable methods
|
... |
extra arguments passed to |
Details
Each generic has methods defined for computing
correlations between NMF models and/or compatible
matrices. The computation is performed by the base
function cor
.
Methods
- basiscor
signature(x = "NMF", y = "matrix")
: Computes the correlations between the basis vectors ofx
and the columns ofy
.- basiscor
signature(x = "matrix", y = "NMF")
: Computes the correlations between the columns ofx
and the the basis vectors ofy
.- basiscor
signature(x = "NMF", y = "NMF")
: Computes the correlations between the basis vectors ofx
andy
.- basiscor
signature(x = "NMF", y = "missing")
: Computes the correlations between the basis vectors ofx
.- profcor
signature(x = "NMF", y = "matrix")
: Computes the correlations between the basis profiles ofx
and the rows ofy
.- profcor
signature(x = "matrix", y = "NMF")
: Computes the correlations between the rows ofx
and the basis profiles ofy
.- profcor
signature(x = "NMF", y = "NMF")
: Computes the correlations between the basis profiles ofx
andy
.- profcor
signature(x = "NMF", y = "missing")
: Computes the correlations between the basis profiles ofx
.
Examples
# generate two random NMF models
a <- rnmf(3, 100, 20)
b <- rnmf(3, 100, 20)
# Compute auto-correlations
basiscor(a)
profcor(a)
# Compute correlations with b
basiscor(a, b)
profcor(a, b)
# try to recover the underlying NMF model 'a' from noisy data
res <- nmf(fitted(a) + rmatrix(a), 3)
# Compute correlations with the true model
basiscor(a, res)
profcor(a, res)
# Compute correlations with a random compatible matrix
W <- rmatrix(basis(a))
basiscor(a, W)
identical(basiscor(a, W), basiscor(W, a))
H <- rmatrix(coef(a))
profcor(a, H)
identical(profcor(a, H), profcor(H, a))