Last chance! 50% off unlimited learning
Sale ends in
featureScore
implements different
methods to computes basis-specificity scores for each
feature in the data. The function extractFeatures
implements different
methods to select the most basis-specific features of
each basis component.
featureScore(object, ...)
"featureScore"(object, method = c("kim", "max"))
extractFeatures(object, ...)
"extractFeatures"(object, method = c("kim", "max"), format = c("list", "combine", "subset"), nodups = TRUE)
Additionally for extractFeatures
, it may be an
integer vector that indicates the number of top most
contributing features to extract from each column of
object
, when ordered in decreasing order, or a
numeric value between 0 and 1 that indicates the minimum
relative basis contribution above which a feature is
selected (i.e. basis contribution threshold). In the case
of a single numeric value (integer or percentage), it is
used for all columns.
Note that extractFeatures(x, 1)
means relative
contribution threshold of 100%, to select the top
contributing features one must explicitly specify an
integer value as in extractFeatures(x, 1L)
.
However, if all elements in methods are > 1, they are
automatically treated as if they were integers:
extractFeatures(x, 2)
means the top-2 most
contributing features in each component.
object
, each containing the indexes of the
selected features, as an integer vector. If object
has row names, these are used to name each index vector.
Components for which no feature were selected are
assigned a NA
value.
nodups=TRUE
(default).
object
, but subset with the selected
indexes, so that it contains data only from
basis-specific features.format='combine'
.featureScore
returns a numeric vector of the
length the number of rows in object
(i.e. one
score per feature).extractFeatures
returns the selected features as a
list of indexes, a single integer vector or an object of
the same class as object
that only contains the
selected features.
signature(object =
"matrix")
: Select features on a given matrix, that
contains the basis component in columns. signature(object = "NMF")
:
Select basis-specific features from an NMF model, by
applying the method extractFeatures,matrix
to its
basis matrix. signature(object = "matrix")
:
Computes feature scores on a given matrix, that contains
the basis component in columns. signature(object = "NMF")
:
Computes feature scores on the basis matrix of an NMF
model. featureScore
can compute
basis-specificity scores using the following methods: extractFeatures
can select features
using the following methods: featureScore
with method ‘kim’. Then only
the features that fulfil both following criteria are
retained: bioNMF
software package and described in
Carmona-Saez et al. (2006). For each basis component, the features are first sorted
by decreasing contribution. Then, one selects only the
first consecutive features whose highest contribution in
the basis matrix is effectively on the considered basis.
In NMF models, samples are grouped according to the basis
components that contributes the most to each sample, i.e.
the basis components that have the greatest coefficient
in each column of the coefficient matrix (see
predict,NMF-method
). Each group of samples
is then characterised by a set of features selected based
on basis-specifity scores that are computed on the basis
matrix.
Carmona-Saez P, Pascual-Marqui RD, Tirado F, Carazo JM
and Pascual-Montano A (2006). "Biclustering of gene
expression data by Non-smooth Non-negative Matrix
Factorization." _BMC bioinformatics_, *7*, pp. 78. ISSN
1471-2105,
# random NMF model
x <- rnmf(3, 50,20)
# probably no feature is selected
extractFeatures(x)
# extract top 5 for each basis
extractFeatures(x, 5L)
# extract features that have a relative basis contribution above a threshold
extractFeatures(x, 0.5)
# ambiguity?
extractFeatures(x, 1) # means relative contribution above 100%
extractFeatures(x, 1L) # means top contributing feature in each component
Run the code above in your browser using DataLab