summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRicardo Wurmus <rekado@elephly.net>2022-01-05 15:58:26 +0100
committerRicardo Wurmus <rekado@elephly.net>2022-01-05 21:17:58 +0100
commit9a89cee1b16fe4bfd66465481c4fc4fa12c75403 (patch)
treef578f64f76f71a52b8656678aecd54400ba3e395
parent231e33d636fd99236423b37cfbff1068e868f50e (diff)
downloadguix-patches-9a89cee1b16fe4bfd66465481c4fc4fa12c75403.tar
guix-patches-9a89cee1b16fe4bfd66465481c4fc4fa12c75403.tar.gz
gnu: Add r-matrixextra.
* gnu/packages/cran.scm (r-matrixextra): New variable.
-rw-r--r--gnu/packages/cran.scm44
1 files changed, 44 insertions, 0 deletions
diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm
index 7abd3c5233..852d536c5e 100644
--- a/gnu/packages/cran.scm
+++ b/gnu/packages/cran.scm
@@ -23465,6 +23465,50 @@ additional functions that are comparable to APL functions which are useful for
actuarial models such as pension mathematics.")
(license license:gpl2+)))
+(define-public r-matrixextra
+ (package
+ (name "r-matrixextra")
+ (version "0.1.9-1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (cran-uri "MatrixExtra" version))
+ (sha256
+ (base32 "098apgqlncgxspa8mi4bx2nk5fbk3880whqiwkvydsfsqrbv1sj0"))))
+ (properties `((upstream-name . "MatrixExtra")))
+ (build-system r-build-system)
+ (propagated-inputs
+ (list r-float r-matrix r-rcpp r-rhpcblasctl))
+ (native-inputs
+ (list r-knitr))
+ (home-page "https://github.com/david-cortes/MatrixExtra")
+ (synopsis "Extra methods for sparse matrices")
+ (description
+ "This package extends sparse matrix and vector classes from the Matrix
+package by providing:
+
+@enumerate
+@item Methods and operators that work natively on CSR formats (compressed
+ sparse row, a.k.a. @code{RsparseMatrix}) such as slicing/sub-setting,
+ assignment, @code{rbind()}, mathematical operators for CSR and COO such as
+ addition or @code{sqrt()}, and methods such as @code{diag()};
+@item Multi-threaded matrix multiplication and cross-product for many
+ @code{<sparse, dense>} types, including the @code{float32} type from
+ @code{float};
+@item Coercion methods between pairs of classes which are not present in
+ @code{Matrix}, such as from @code{dgCMatrix} to @code{ngRMatrix}, as well as
+ convenience conversion functions;
+@item Utility functions for sparse matrices such as sorting the indices or
+ removing zero-valued entries;
+@item Fast transposes that work by outputting in the opposite storage format;
+@item Faster replacements for many @code{Matrix} methods for all sparse types,
+ such as slicing and elementwise multiplication.
+@item Convenience functions for sparse objects, such as @code{mapSparse} or a
+ shorter @code{show} method.
+@end enumerate
+")
+ (license license:gpl2+)))
+
(define-public r-sem
(package
(name "r-sem")