これまでのところ、このエラーの意味を理解するためのアイデアはありません。もし私が持っていれば、私の matlab プログラミングでこの問題を解決できると思います。
何が起こっているのかを説明し、例を挙げてくれる人がいたら?
これまでのところ、このエラーの意味を理解するためのアイデアはありません。もし私が持っていれば、私の matlab プログラミングでこの問題を解決できると思います。
何が起こっているのかを説明し、例を挙げてくれる人がいたら?
I
論理行列の場合
I =
1 0 1 1 0
A
は同じサイズの配列であり、
A =
5 3 8 1 2
それから
>> A(I)
ans =
5 8 1
つまり、I
の要素のマスクとして機能しA
ます。これを割り当てに使用することもできます。
>> A(I) = 4
A =
4 3 4 4 2
(スカラー代入)、または
>> A(I) = [1 NaN 3]
A =
1 3 NaN 3 2
(配列割り当て)。次のようなことをしようとすると、エラーが発生します
>> A(I) = [ 7 6 5 4 8 7 6 8 7 9 4 3 2]
つまり、 containsA(I)
とは異なる数の要素を参照し[7 6 5 4 8 7 6 8 7 9 4 3 2]
ます。これは、スカラー値または空の値を代入する場合にのみ有効です
A(I) = [] %# valid
A(I) = 4 %# valid
A(I) = [1 2 3] %# valid, numel(A(I)) == numel([1 2 3])
A(I) = [1 2] %# NOT VALID, numel(A(I)) != numel([1 2])