Многомерный разреженный массив (трехсторонний тензор) в R
Используя пакет Matrix, я могу создать двумерную разреженную матрицу.
Может кто-нибудь предложить пакет, который позволил бы мне создать многомерную (в частности, трехмерную) разреженную матрицу (массив или технически трехсторонний тензор) в R?
Ответ 1
Пакет slam имеет класс simple_sparse_array: http://finzi.psych.upenn.edu/R/library/slam/html/array.html, хотя он поддерживает только индексирование и принуждение (если вы хотите выполнять тензорные операции, или элементарной арифметикой, не обращаясь к регулярному плотному массиву, вам придется реализовать их самостоятельно...)
Я нашел это, выполнив
library("sos")
findFn("{sparse array}")
Ответ 2
Также существует пакет tensorr, который выглядит многообещающим в обеспечении поддержки разреженных тензоров, а также тензорные разложения, такие как PARAFAC/CANDECOMP и т.д., также находятся в списке дел:
https://cran.r-project.org/web/packages/tensorr/README.html