我有一張表格,我從中提取每列被告的最大元素和他在表格中的位置。matlab中的下標賦值維度不匹配與開關案例
Max = max(ARRAY,[],1); for i=1:1 for j=1:30 [X,Y] = find(ARRAY == Max(i,j)); Locations(i,j)=X; end end
我希望得到一個表Sample_Targets (i, j) 10 * 30
其中根據(位置(I,J))爲(1-10)的值中的每一列來存儲是type A = [1;0;0;0;0; 0;0;0;0;0];
for i=1:1
for j=1:30
switch Locations(i,j)
case {1}
Sample_Targets(i,j) = [1;0;0;0;0;0;0;0;0;0];
case {2}
Sample_Targets(i,j) = [0;1;0;0;0;0;0;0;0;0];
case {3}
Sample_Targets(i,j) = [0;0;1;0;0;0;0;0;0;0];
case {4}
Sample_Targets(i,j) = [0;0;0;1;0;0;0;0;0;0];
case {5}
Sample_Targets(i,j) = [0;0;0;0;1;0;0;0;0;0];
case {6}
Sample_Targets(i,j) = [0;0;0;0;0;1;0;0;0;0];
case {7}
Sample_Targets(i,j) = [0;0;0;0;0;0;1;0;0;0];
case {8}
Sample_Targets(i,j) = [0;0;0;0;0;0;0;1;0;0];
case {9}
Sample_Targets(i,j) = [0;0;0;0;0;0;0;0;1;0];
case {10}
Sample_Targets(i,j) = [0;0;0;0;0;0;0;0;0;1];
end
end
end
可變
每當我得到相同的錯誤:
下標的分配維度不匹配。
我該怎麼辦?
請提供允許重現您的問題的代碼,包括初始化所有變量。 – Daniel
這是我所有的朋友。 – Lateras