Subscripted assignment dimension mismatch.

Hello, I traied to put the results (2 string rows) into Final_Solutions workspace
Final_Solutions =zeros();
for i=1 : Mat_A_Rows
Final_Rows = size(Final_Solutions,1);
for j=1 : 1
if (Mat_A_bests(i,j) ~= 0 && Mat_A_bests(i,j+1) ~= 0 && Mat_A_bests(i,j+2) ~= 0 )
Final_Solutions(Final_Rows+1,:) = cell2mat([Mat_A_STRS_RAW(i,1) Mat_A_STRS_RAW(i,j+1) Mat_A_STRS_RAW(i,j+2) Mat_A_STRS_RAW(i,j+3)]);
end
end
end

2 Comments

The error is probably caused by difference in dimensions of Final_Solutions(Final_Rows+1,:) and cell2mat([Mat_A_STRS_RAW(i,1) Mat_A_STRS_RAW(i,j+1) Mat_A_STRS_RAW(i,j+2) Mat_A_STRS_RAW(i,j+3)]). Add a breakpoint at this line and see why the number of elements are not equal.
Final_Solutions =zeros();
This should be pre-sized properly. All this does is declare a scalar 0, which is obviously not the correct size for your results in the for loop. Start off by pre-sizing it to the size your result should be.

Answers (0)

This question is closed.

Asked:

on 24 Mar 2020

Closed:

on 20 Aug 2021

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!