2015-07-09 31 views
0

这应该很容易,但我被卡住了。我试图将Seq[Seq[Double]]类型转换为Breeze DenseMatrix。 (所有嵌套序号[双]的具有相同数量的元素)如何将序列变量转换为Scala中的矩阵

转换一个单一序列与DenseVector是相当容易的:

val sss=Seq(2.3,3.4,2.0,1.0) 
val bbb=DenseVector(sss:_*) 

是否有任何类似的方式,以Seq[Seq[Double]]类型转换为一个DenseMatrix?例如:

val sss=Seq(2.3,3.4,2.0,1.0) 
val sssM=Seq(sss,sss,sss) 
val bbb=DenseVector(sss:_*) 
//val bbm= DenseMatrix(sssM:_*:??) //???? 

回答

0

我注意到,同样的方法工作得很好:

val sss=Seq(2.3,3.4,2.0,1.0) 
val sssM=Seq(sss,sss,sss) 
val bbb=DenseVector(sss:_*) 
val bbm= DenseMatrix(sssM:_*) 

最初我曾认为我们需要扩大每个嵌套序列以及。但正如Rex Kerr在下面的评论中所述,Breeze库会自动处理这个问题。

+1

这不是编译器 - Breeze库伴侣对象已经写入了一个你想要的方法。 –

+0

当然,我不知道。 – Alt