Я довольно новичок в Apache Common Math, поэтому прошу прощения за тривиальные вопросы.
На основе API doc я не могу понять, как выполнить сумму по столбцам или по строкам.
import org.apache.commons.math3.linear.RealMatrix;
import org.apache.commons.math3.linear.MatrixUtils;
double[][] values = {{1.0, 2.0}, {3.0, 4.0}, {5.0, 6.0}};
RealMatrix mtx = MatrixUtils.createRealMatrix(values);
Приведенный выше код генерирует матрицу, подобную следующей:
[[1, 2],
[3, 4],
[5, 6]]
Какой правильный синтаксис для вычисления суммы по столбцам? Что дало бы мне:
[9, 12]
А как мне выполнить построчную сумму? Что дало бы мне:
[3,
7,
11
]
Для сравнения ниже приведен синтаксис в библиотеке Scala Breeze:
import breeze.linalg._
val mtx = DenseMatrix((1.0, 2.0), (3.0, 4.0), (5.0, 6.0))
// sum along the column direction
sum(mtx(::, *))
// Transpose(DenseVector(9.0, 12.0))
// sum along the row direction
sum(mtx(*, ::))
// DenseVector(3.0, 7.0, 11.0)