シミュレーションを作成しましたが、シミュレーションのたびに結果がマトリックスになり、マトリックスから特定の行を選択します。したがって、シミュレーション実行 = 500 の場合、500 マトリックスがあり、毎回選択する行は(シミュレーションの最後に) 500 行 [最初の行列の 1 行...最後の行列の最後の行]... 問題は、行列に必要な特定の行が含まれていない場合があることです。答えはたとえば、空行列: 0 行 6 列の場合、この回答を無視します。注: 選択した行がすべての行列に存在する必要はないため、run=600 の場合、行列が 600 になる場合、選択した行はおそらく =400 になります。のみ、他の 200 はゼロになり、結果が空の行列の場合はシミュレーションが停止します: 0-by-any number 私は Matlab を使用します
4345 次
1 に答える
1
isempty
たとえば、空の配列を検出するために使用できます
a=zeros(0,5)
isempty(a)
a =
Empty matrix: 0-by-5
ans =
1
インデックスがマトリックスの次元を超えた場合、マトリックスをテストする条件を追加できsize
ます。具体的には、使用している行数size(m,1)
したがって、 for ループで次のようなコードを作成できます。
for n=1:blah
if ~isempty(M) % continue if matrix is non-empty
if size(M,1)<=n % continue if index doesn't exceeds matrix dimensions
....
....
于 2013-02-03T01:17:05.667 に答える