私はmatlabを初めて使用し、コード内の非常に小さなことを変更する必要があるだけです。次のマトリックスがあります。
ans =
1 1 1
1 2 1
2 1 1
2 2 2
この ans の行数を取得する方法は? それは4であるべきです
私はmatlabを初めて使用し、コード内の非常に小さなことを変更する必要があるだけです。次のマトリックスがあります。
ans =
1 1 1
1 2 1
2 1 1
2 2 2
この ans の行数を取得する方法は? それは4であるべきです
size関数を使用する必要があります。
nRows = size(myMatrix, 1); % 1 stands for the first dimension
サイズ関数を使用するだけです
size(ans, 1)
最初に定義する方がはるかに読みやすいと思います
rows = @(x) size(x,1);
cols = @(x) size(x,2);
次に、たとえば次のように使用します。
for y = 1:rows(myMatrix)
for x = 1:cols(myMatrix)
do_whatever(myMatrix(y,x))
end
end
わずかな節約に見えるかもしれませんがsize(.., 1)
、最も一般的に使用される関数の 1 つに違いありません。
(ちなみに、このような行列をループすることは、パフォーマンスが重要なコードには最適な選択ではないかもしれません。しかし、それが問題にならない場合は、最も読みやすい選択を行ってください。)
また、1 回の呼び出しで行数と列数の両方を取得できます。
[rows columns] = size(myMatrix);