Learn R Programming

⚠️There's a newer version (0.28) of this package.Take me there.

Background

Nonnegative Matrix Factorization (NMF) is an unsupervised learning technique that has been applied successfully in several fields, including signal processing, face recognition and text mining. Recent applications of NMF in bioinformatics have demonstrated its ability to extract meaningful information from high-dimensional data such as gene expression microarrays. Developments in NMF theory and applications have resulted in a variety of algorithms and methods. However, most NMF implementations have been on commercial platforms, while those that are freely available typically require programming skills. This limits their use by the wider research community.

Results

Our objective is to provide the bioinformatics community with an open-source, easy-to-use and unified interface to standard NMF algorithms, as well as with a simple framework to help implement and test new NMF methods. For that purpose, we have developed a package for the R/BioConductor platform. The package ports public code to R, and is structured to enable users to easily modify and/or add algorithms. It includes a number of published NMF algorithms and initialization methods and facilitates the combination of these to produce new NMF strategies. Commonly used benchmark data and visualization methods are provided to help in the comparison and interpretation of the results.

Conclusions

The NMF package helps realize the potential of Nonnegative Matrix Factorization, especially in bioinformatics, providing easy access to methods that have already yielded new insights in many applications.

Availability

Documentation, source code and sample data are available from:

NOTE: due to some unknown problem on R-forge build system, the package is not being built. Please use the MyCRAN repository until the issue is fixed. * MyCRAN: personal CRAN-like repository at http://web.cbio.uct.ac.za/~renaud/CRAN


Travis check:

Copy Link

Version

Install

install.packages('NMF')

Monthly Downloads

9,717

Version

0.20.6

License

GPL (>= 2)

Maintainer

Renaud Gaujoux

Last Published

May 26th, 2015

Functions in NMF (0.20.6)

NMFns-class

NMF Model - Nonsmooth Nonnegative Matrix Factorization
NMF-class

Generic Interface for Nonnegative Matrix Factorisation Models
dispersion

Dispersion of a Matrix
nmfModel

Factory Methods NMF Models
randomize

Randomizing Data
revPalette

Flags a Color Palette Specification for Reversion
show,NMFfitXn-method

Show method for objects of class NMFfitXn
show,NMFSeed-method

Show method for objects of class NMFSeed
basiscor

Correlations in NMF Models
seed

Interface for NMF Seeding Methods
nmf

Running NMF algorithms
is.nmf

Testing NMF Objects
utils-NMF

Utility Function in the NMF Package
cluster_mat

Cluster Matrix Rows in Annotated Heatmaps
nmf_update.lee_R

NMF Algorithm/Updates for Frobenius Norm
NMFList-class

Class for Storing Heterogeneous NMF fits
NMFStrategy-class

Virtual Interface for NMF Algorithms
nmfAlgorithm.SNMF_R

NMF Algorithm - Sparse NMF via Alternating NNLS
NMF-package

Algorithms and framework for Nonnegative Matrix Factorization (NMF).
c,NMF-method

Concatenating NMF Models
consensus,NMFfitXn-method

Computes the consensus matrix of the set of fits stored in object, as the mean connectivity matrix across runs.
cutdendro

Fade Out the Upper Branches from a Dendrogram
ccRamp

Builds a Color Ramp from Compact Color Specification
purity

Purity and Entropy of a Clustering
show,NMFfit-method

Show method for objects of class NMFfit
show,NMFfitX-method

Show method for objects of class NMFfitX
sparseness

Sparseness
NMFfitX-class

Virtual Class to Handle Results from Multiple Runs of NMF Algorithms
NMFSeed-class

Base class that defines the interface for NMF seeding methods.
ccSpec

Extract Colour Palette Specification
NMFfitXn-class

Structure for Storing All Fits from Multiple NMF Runs
algorithm,NMFStrategyOctave-method

Returns the name of the Octave/Matlab function that implements the NMF algorithm -- as stored in slot algorithm.
connectivity

Clustering Connectivity and Consensus Matrices
deviance

Distances and Objective Functions
registerDoBackend

Utilities and Extensions for Foreach Loops
offset,NMFOffset-method

Offsets in NMF Models with Offset
nmfEstimateRank

Estimate Rank for NMF Models
rnmf

Generating Random NMF Models
NMFSeed

Seeding Strategies for NMF Algorithms
silhouette.NMF

Silhouette of NMF Clustering
staticVar

Get/Set a Static Variable in NMF Algorithms
smoothing

Smoothing Matrix in Nonsmooth NMF Models
fit

Extracting Fitted Models
algorithmic-NMF

Generic Interface for Algorithms
algorithm,NMFList-method

Returns the method names used to compute the NMF fits in the list. It returns NULL if the list is empty.
cophcor

Cophenetic Correlation Coefficient
lverbose

Internal verbosity option
match_atrack

Extending Annotation Vectors
rmatrix

Generating Random Matrices
t.NMF

Transformation NMF Model Objects
runtime,NMFList-method

Returns the CPU time required to compute all NMF fits in the list. It returns NULL if the list is empty. If no timing data are available, the sequential time is returned.
show,NMFList-method

Show method for objects of class NMFList
show,NMFOffset-method

Show method for objects of class NMFOffset
.atrack

Annotation Tracks
NMFOffset-class

NMF Model - Nonnegative Matrix Factorization with Offset
NMFStrategy

Factory Method for NMFStrategy Objects
checkErrors

Error Checks in NMF Runs
basis

Accessing NMF Factors
.fcnnls

Internal Routine for Fast Combinatorial Nonnegative Least-Squares
nmf.equal

Testing Equality of NMF Models
nmfCheck

Checking NMF Algorithm
offset,NMFfit-method

Returns the offset from the fitted model.
plot,NMFfit,missing-method

Plots the residual track computed at regular interval during the fit of the NMF model x.
show,NMF-method

Show method for objects of class NMF
featureScore

Feature Selection in NMF Models
nmf_update.ns

NMF Multiplicative Update for Nonsmooth Nonnegative Matrix Factorization (nsNMF).
NMF-deprecated

Deprecated Functions in the Package NMF
NMFStrategyIterative-class

Interface for Algorithms: Implementation for Iterative NMF Algorithms
consensus,NMFfitX1-method

Returns the consensus matrix computed while performing all NMF runs, amongst which object was selected as the best fit.
NMFStrategyFunction-class

Interface for Single Function NMF Strategies
canFit

Testing Compatibility of Algorithm and Models
gfile

Open a File Graphic Device
nmfAlgorithm

Listing and Retrieving NMF Algorithms
nmfFormals

Showing Arguments of NMF Algorithms
bioc-NMF

Specific NMF Layer for Bioconductor
ccBreaks

Generate Break Intervals from Numeric Variables
fcnnls

Fast Combinatorial Nonnegative Least-Square
fitted

Fitted Matrix in NMF Models
nmf_update.euclidean.h

NMF Multiplicative Updates for Euclidean Distance
parse_formula

Simple Parsing of Formula
nmfObject

Updating NMF Objects
rss

Residual Sum of Squares and Explained Variance
nmf_update.euclidean_offset.h

NMF Multiplicative Update for NMF with Offset Models
residuals

Residuals in NMF Models
show,NMFns-method

Show method for objects of class NMFns
Strategy-class

Generic Strategy Class
[,NMF-method

Sub-setting NMF Objects
advanced-NMF

Advanced Usage of the Package NMF
nmfWrapper

Wrapping NMF Algorithms
nneg

Transforming from Mixed-sign to Nonnegative Data
profplot

Plotting Expression Profiles
scale.NMF

Rescaling NMF Models
syntheticNMF

Simulating Datasets
NMFstd-class

NMF Model - Standard model
setupBackend

Computational Setup Functions
setNMFMethod

Registering NMF Algorithms
NMFfit-class

Base Class for to store Nonnegative Matrix Factorisation results
NMF-defunct

Defunct Functions and Classes in the NMF Package
NMFfitX

Factory Method for Multiple NMF Run Objects
getRNG1

Extracting RNG Data from NMF Objects
aheatmap

Annotated Heatmaps
basisnames

Dimension names for NMF objects
nbasis

Dimension of NMF Objects
nmf_update.KL.h

NMF Multiplicative Updates for Kullback-Leibler Divergence
options-NMF

NMF Package Specific Options
predict

Clustering and Prediction
runtime.all,NMFfitXn-method

Returns the CPU time used to perform all the NMF fits stored in object.
NMFStop

Stopping Criteria for NMF Iterative Strategies
nmf_update.brunet_R

NMF Algorithm/Updates for Kullback-Leibler Divergence
NMFStrategyOctave-class

S4 Interface for Octave-Matlab NMF Algorithms
summary

Assessing and Comparing NMF Models
NMFfitX1-class

Structure for Storing the Best Fit Amongst Multiple NMF Runs
consensushc

Hierarchical Clustering of a Consensus Matrix
esGolub

Golub ExpressionSet
ccPalette

Builds a Color Palette from Compact Color Specification
tryViewport

Internal Grid Extension
heatmap-NMF

Heatmaps of NMF Factors
pmax.inplace

Updating Objects In Place
nmf_update.lsnmf

Multiplicative Updates for LS-NMF
nmfReport

Run NMF Methods and Generate a Report
parallel-NMF

Utilities for Parallel Computations
methods-NMF

Registry for NMF Algorithms
show,NMFStrategyIterative-method

Show method for objects of class NMFStrategyIterative
show,NMFfitX1-method

Show method for objects of class NMFfitX1
bterms<-

Fixed Terms in NMF Models
nmfApply

Apply Function for NMF Objects
ibterms

Fixed Terms in NMF Models
objective,NMFfit-method

Returns the objective function associated with the algorithm that computed the fitted NMF model object, or the objective value with respect to a given target matrix y if it is supplied.
txtProgressBar

Simple Progress Bar
compare-NMF

Comparing Results from Different NMF Runs