breezeを使用する0.13、Scala 2.12.3breeze下三角をコピーできませんか?
下の三角形を上の方にコピーして対称行列を作成したいと思います。 Linear Algebra Cheat Sheetの指示に従ってください。私は関数を間違って使用することがありますが、lowerTriangular
関数が正しく動作していないようです。コピーだけ
val myMtx = breeze.linalg.DenseMatrix((1,-8,-9) , (2,1,-7), (3,5,1))
//myMtx: breeze.linalg.DenseMatrix[Int] =
// 1 -8 -9
// 2 1 -7
// 3 5 1
コピー下三角(動作していないようです)
breeze.linalg.lowerTriangular(myMtx)
// 1 0 0
// 2 1 0
// 3 5 1
コピー上三角(どちらか動作していない)このような状況において
breeze.linalg.upperTriangular(myMtx)
// 1 -8 -9
// 0 1 -7
// 0 0 1
lowerTriangularとupperTriangularの定義を明確にしてくれてありがとう。非常に「diag(diag(myMtx))」のトリックと同様に、 – Polymerase