2016-01-13 45 views
1

我硬編碼與下面的值的矩陣:從列表讀取如何動態地添加行和列的微風DenseMatrix在斯卡拉

val m = breeze.linalg.DenseMatrix((1, 4), (2, 5)) 
val v = breeze.linalg.DenseMatrix((7, 8), (3, 6)) 

我要插入的行和列的這些值。

+0

你知道的行和列的時間提前多少? – dlwh

+0

而...什麼阻止你?你有什麼嘗試?你卡在哪裏? –

+0

我已經走了文檔中的許多方法,沒有正確解釋任何方法。目前尚無法使用任何方法。 –

回答

0

這是我發現:

val x = new DenseMatrix(2, 3, Array(11, 12, 13, 21, 22, 23)) 

它通過從數組中指定的數字2和3切下2行3列的矩陣。

結果是:

11 13 22 
12 21 23 
2

如果你有rows:Seq[Seq[Double]],其中外〜EQ每個條目是行:

DenseMatrix(rows:_*) 

如果知道矩陣的各個維度的時間提前,你必須爲每個行/列DenseVectors)

val dm = DenseMatrix.zeros[Double](rows, cols) 
dm(::, c) := myColDenseVector 
dm(r, ::) := myRowDenseVector.t 

或者,如果你有一堆DenseVectors的,你可以說:DenseVector.horzcat(columns:_*)