MatrixExtra: Extra Methods for Sparse Matrices

Extends sparse matrix and vector classes from the 'Matrix' package by providing: (a) Methods and operators that work natively on CSR formats (compressed sparse row, a.k.a. 'RsparseMatrix') such as slicing/sub-setting, assignment, rbind(), mathematical operators for CSR and COO such as addition ("+") or sqrt(), and methods such as diag(); (b) Multi-threaded matrix multiplication and cross-product for many <sparse, dense> types, including the 'float32' type from 'float'; (c) Coercion methods between pairs of classes which are not present in 'Matrix', such as 'dgCMatrix' -> 'ngRMatrix', as well as convenience conversion functions; (d) Utility functions for sparse matrices such as sorting the indices or removing zero-valued entries; (e) Fast transposes that work by outputting in the opposite storage format; (f) Faster replacements for many 'Matrix' methods for all sparse types, such as slicing and elementwise multiplication.

Version: 0.1.4
Depends: Matrix (≥ 1.3), methods
Imports: Rcpp, RhpcBLASctl, float
LinkingTo: Rcpp
Suggests: testthat, data.table, knitr, rmarkdown
Published: 2021-05-18
Author: David Cortes [aut, cre, cph], Dmitry Selivanov [cph]
Maintainer: David Cortes <david.cortes.rivera at>
License: GPL-2 | GPL-3 [expanded from: GPL (≥ 2)]
NeedsCompilation: yes
CRAN checks: MatrixExtra results


Reference manual: MatrixExtra.pdf
Vignettes: Introducing_MatrixExtra
Package source: MatrixExtra_0.1.4.tar.gz
Windows binaries: r-devel:, r-devel-UCRT:, r-release:, r-oldrel:
macOS binaries: r-release (arm64): MatrixExtra_0.1.4.tgz, r-release (x86_64): MatrixExtra_0.1.4.tgz, r-oldrel: MatrixExtra_0.1.4.tgz
Old sources: MatrixExtra archive

Reverse dependencies:

Reverse suggests: cmfrec, readsparse


Please use the canonical form to link to this page.