Java でのマトリックス操作に Jama を使用しています。ただし、それに関する適切なドキュメントは見つかりませんでした。
Jama でマトリックスをシャッフルするにはどうすればよいですか?
また、次のようなものがあります:
Matrix(:,end)
Matlabのように最後の列だけを取得するには?
ドキュメント (まあ、少なくともクラスのドキュメント) はここにあります: http://math.nist.gov/javanumerics/jama/doc/
このMatrix
クラスには、getMatrix()
部分行列を抽出するメソッドがあります。
/** Get a submatrix.
@param r Array of row indices.
@param c Array of column indices.
@return A(r(:),c(:))
@exception ArrayIndexOutOfBoundsException Submatrix indices
*/
public Matrix getMatrix (int[] r, int[] c) {
Matrix X = new Matrix(r.length,c.length);
double[][] B = X.getArray();
try {
for (int i = 0; i < r.length; i++) {
for (int j = 0; j < c.length; j++) {
B[i][j] = A[r[i]][c[j]];
}
}
} catch(ArrayIndexOutOfBoundsException e) {
throw new ArrayIndexOutOfBoundsException("Submatrix indices");
}
return X;
}
Jama
過度に複雑ではありません。getColumn()
にメソッドを追加するのは非常に簡単Matrix.java
です。