2014-07-24 133 views
2

有什么方法可以将微风矢量转换为行/列大小1的微风矩阵吗?我是Scala中的新成员,在过去编写能够无缝处理矢量和矩阵的函数(主要是在Matlab中)中发现它非常有用。例如,我想在以下代码中使用func作为subsetMatrix或subsetVector的输入。微风矢量到矩阵转换

val dummyMatrix = DenseMatrix.eye[Double](3) 
val subsetMatrix = dummyMatrix(::,0 to 2) 
val subsetVector = dummyMatrix(::,1) 


def func(X1: DenseMatrix[Double]): Int = { 
// Some operation on X1 
} 

回答

5

使用asDenseMatrix

scala> import breeze.linalg._ 
import breeze.linalg._ 

scala> val dv = DenseVector(1, 2, 3) 
dv: breeze.linalg.DenseVector[Int] = DenseVector(1, 2, 3) 

scala> dv.asDenseMatrix 
res0: breeze.linalg.DenseMatrix[Int] = 1 2 3 

scala> (res0.rows, res0.cols) 
res1: (Int, Int) = (1,3) 

scala> 
+0

为什么它不成为列向量? – dividebyzero