Sparse matrix 如何用微风将SparseVector切成薄片?

Sparse matrix 如何用微风将SparseVector切成薄片?,sparse-matrix,scala-breeze,Sparse Matrix,Scala Breeze,我在微风中有一个SparseVector和一个给定的索引列表。如何获得一个新的SparseVector,它只包含那些索引中的元素 例如: 我想得到一个像这样的新向量: val sliceVector = testVector.slice(indices) // Vector(1,2) 我无法手动迭代索引和值,因为我有超过一百万个索引,其中只有2000个非零值。testVector(index.toIndexedSeq)将返回表示underyling向量视图的切片向量。我想这正是您想要的。te

我在微风中有一个SparseVector和一个给定的索引列表。如何获得一个新的SparseVector,它只包含那些索引中的元素

例如:

我想得到一个像这样的新向量:

val sliceVector = testVector.slice(indices)  // Vector(1,2)

我无法手动迭代索引和值,因为我有超过一百万个索引,其中只有2000个非零值。

testVector(index.toIndexedSeq)
将返回表示underyling向量视图的切片向量。我想这正是您想要的。

testVector(index.toIndexedSeq)
将返回一个切片向量,表示欠链接向量的视图。我想这正是你想要的。

谢谢!!我不知道有那么简单。但是,如何将此切片向量转换为新的SparseVector?谢谢!!我不知道有那么简单。但是,如何将此SliceVector转换为新的SparseVector?
val sliceVector = testVector.slice(indices)  // Vector(1,2)