次のような行列 M があります。
M = [ 1, 2, 3, 0, 0;
1, 2, 0, 0, 0;
2, 3, 4, 5, 0;
4, 5, 6, 0, 0;
1, 2, 3, 4, 5;
]
A の各行の右端のゼロ以外の値を持つ列ベクトルを取得しようとしていますが、最初の列 == 1 を持つ行に対してのみです。
行のフィルターを計算できます。
r = M( :, 1 ) == 1;
> r = [ 1; 1; 0; 0; 1 ]
そして、「M の各行の右端のゼロ以外の値」の一連のインデックスがあります。
> c = [ 3, 2, 4, 3, 5 ]
探しているものを取得するために、これらを A のスライスでどのように組み合わせるのですか? 私は次のようなものを探しています:
A( r, c )
> ans = [ 3; 2; 5 ]
しかし、これを行うと、何らかの理由で 3x3 マトリックスが得られます。