ojAlgo:切片或提取子矩阵

ojAlgo: slice or extract sub-matrix

在 java 库 ojAlgo 中,如何对矩阵进行切片或从现有矩阵中提取子矩阵?

例如, matrix A = [[1,2,3],[4,5,6],[7,8,9]].

我正在寻找一种类似于 slice(a,b,c,d) 的方法,其中 a、b 是行的开始和结束索引,c、d 是列的开始和结束索引。

例如,如果我调用A.slice(1,3,1,3),它应该return [[5,6],[8,9]]

我尝试了 SparseStore 中的 slice 方法,但它没有像我预期的那样工作。

"slice" 方法总是 return 一维的东西。您可以切出索引范围、行、列、对角线...

如果你想要一个矩阵的子视图,你可以这样做:

matrix.logical().limits(3, 3).offsets(1, 1).get();

或者对于你的例子,因为原始矩阵是 3x3,这就足够了:

matrix.logical().offsets(1, 1).get();