Info

This question is closed. Reopen it to edit or answer.

Subscripted assignment dimension mismatch Error, How to find the cause?

1 view (last 30 days)
Good afternoon,
I'm stuck again on what I think is a minor problem but I can't seem to figure how to get around it.
I keep getting the Subscripted assignment dimension mismatch.
Error in CR (line 168) LOC7(2:4,k) = OB(1,idx)
Loc7 is 4 x 37 double and OB is 2 x 37 double.
k should run to 37 but keeps stopping at fourteen.
I've used this method on other data and it works fine, I'm confused about where/ why and how to fix this error.
Any suggestions or thought are very much appreciated!
Thank you for any time you can spare!!
LOC7 = LOC6;
for k = 1:size(OBLOC6,2)
if LOC6(1,k)~=0
[idx] = find(OB(2,:)==LOC6(1,k))
if ~isempty(idx)
if LOC7(2,k) == 0
LOC7(2:4,k) = OB(1,idx)
end
end
end
end
  1 Comment
Jan
Jan on 26 Oct 2015
Please use code formatting and avoid leading spaces for standard text. I've edited your question to improve the readability this time.

Answers (1)

Jan
Jan on 26 Oct 2015
If idx is not a scalar this line must fail:
LOC7(2:4,k) = OB(1,idx)
Then you have a [2 x 1] array on the left hand side, and a [1 x N] vector on the right.

Community Treasure Hunt

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

Start Hunting!