0

私は2つの行列を持っているとしましょう:AそしてB、それらは2つの異なるサイズです。例:

A = [1 2]

B = [3 4 5]

私がやりたいのは、より大きなマトリックスを切り取り、要素を削除することです。すなわち。上記の場合、次のようになります。

A = [1 2] <- Stays the same because it's smaller

B = [3 4] <- Cropped to same size as A.

これで、退屈なステートメントifelseステートメントを使って簡単に実行できるようになりましたが、ウィザードまたは魔女が、これを 1 行で実行する魔法の matlab 構文を明らかにするのに役立つことを望んでいました。

それらは常に 3xN であると仮定します。ベクトル。

4

2 に答える 2

2

これは、基本的にジョナスの回答と同じように、多次元マトリックスでも機能するはずです。

d = min([size(A); size(B)]);
A = A(1:d(1),1:d(2));
B = B(1:d(1),1:d(2));

サイズマトリックス([2 4]など)をどのようにインデックスに変換できるのだろうか、つまり[1:2、1:4])...

于 2013-04-17T07:19:39.237 に答える