在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)
,则应该返回[[5,6],[8,9]]
。
我在slice
中尝试了SparseStore
方法,但它无法正常工作。
答案 0 :(得分:1)
"切片"方法总是返回1D的东西。您可以切出索引范围,行,列,对角线......
如果你想要一个矩阵的子视图,你可以这样做:
matrix.logical().limits(3, 3).offsets(1, 1).get();
或者你的例子,因为原始矩阵是3x3,它足以做:
matrix.logical().offsets(1, 1).get();