find()
函數返回元素非零的索引。我試着用不同的數組的大小但都給出錯誤:Matlab:對find()函數的困惑
In an assignment A(I) = B, the number of elements in B and I must be the same.
我很困惑,因爲當數組大小相同,還是我得到這個錯誤。
這僅僅是明白什麼地方出了錯: 讓,
例1:同一陣列尺寸
A = [20;21;3;45;5;19;1;8;2;1];
B = A;
for i =1:length(B)
pos(i) = find(A == B(i));
end
我應該拿pos = [1,2,3,4,5,6,7,8,9,10]
。但循環退出i = 7
後,給予`POS = [1,2,3,4,5,6]」
例2:異種數組大小
C = [20;1;10;3];
for i =1:length(C)
pos(i) = find(A == C(i));
end
有人可以請解釋什麼是錯的我的理解和我如何使用A和B的相同和不同數組長度的說明?謝謝。
閱讀錯誤:問題與作業有關。 'find()'返回一個數組,並且將*賦給一個標量'pos(i)'。除非有'A == B(i)'的單個元素爲真,否則你肯定會有錯誤。 –