2016-11-08 12 views
0

Я пытаюсь найти способ быстрого преобразования DenseMatrix в SparseMatrix.Scala Breeze DenseMatrix to SparseMatrix конверсия

Я попытался уплощение DenseMatrix в массив, превращая его в разреженную матрицу, а затем меняют его, но это не представляется возможным, так как нет никакой функции Reshape ..

val dm = DenseMatrix((1,2,3),(0,0,0),(0,0,0)) 
val sm =CSCMatrix(dm.toArray) 
sm.reshape(3,3) 

ошибка: значение Reshape не член breeze.linalg.CSCMatrix [Int]

ответ

1

Как о чем-то вроде этого:

val dm = DenseMatrix((1,2,3),(0,0,0),(0,0,0)) 
val sm = CSCMatrix.tabulate(dm.rows, dm.cols)(dm(_, _))