フィルターのクリア

How can I quickly compare sizes of two Matrices?

75 ビュー (過去 30 日間)
Jakob Gillinger
Jakob Gillinger 2017 年 5 月 23 日
回答済み: Matthew Heberger 2022 年 12 月 29 日
I have two matrices of different sizes I'd like to compare before performing calculations with them - basically, I want to make sure their number of columns match. Now, as far as I can tell, I would have to use size() on both and compare their second value of the resulting vector, but since I can't index matrices that are temporary, I have to save the size vectors to a new variable, and then compare the indexed numbers. Is there a way to do it not only faster, but also without having to create a new variable?

採用された回答

Stephen23
Stephen23 2017 年 5 月 23 日
編集済み: Stephen23 2017 年 5 月 23 日
Use size's optional second input to pick which dimension you want to check, e.g. to check if arrays A and B have the same number of columns:
size(A,2)==size(B,2)
  1 件のコメント
Jakob Gillinger
Jakob Gillinger 2017 年 5 月 23 日
This one works, thanks.

サインインしてコメントする。

その他の回答 (2 件)

KSSV
KSSV 2017 年 5 月 23 日
doc isequal..
  1 件のコメント
Jakob Gillinger
Jakob Gillinger 2017 年 5 月 23 日
That's not what I'm looking for. The only thing I need to check is whether the two matrices have the same number of columns, everything can and will be different.

サインインしてコメントする。


Matthew Heberger
Matthew Heberger 2022 年 12 月 29 日
Here is a good way to check that matrices A and B have the same size across all dimensions:
isequal(size(A), size(B))
This will return true if the matrices have the same size, and false if they have a different size. You can wrap it in an assert command if you want to raise an error and stop execution of the script when the two matrices are not the same size:
assert(isequal(size(A), size(B)))
Here is an example:
A = zeros(3, 1, 4);
B = zeros(3, 1, 4);
assert(isequal(size(A), size(B)))
% script will continue running after this...
This section will raise an error:
A = zeros(3, 1, 4);
B = zeros(3, 1);
assert(isequal(size(A), size(B)))
Error using assert
Assertion failed.

カテゴリ

Help Center および File ExchangeOperators and Elementary Operations についてさらに検索

タグ

製品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by