MATLAB Answers


Error Index exceeds matrix dimensions

Asked by Lev Mihailov on 20 Aug 2019
Latest activity Answered by Jan
on 20 Aug 2019
Data 1000x100
for i = 2:length(x)-1
[x ,y] = min(Data(i));
if x(i) < x(i-1)+10 && x(i) < x(i+1)+10
Index exceeds matrix dimensions.
Hello! I have a matrix, I'm trying to create a loop that I need for a maximum of x values, but it gives me such an error

  1 Comment

on 20 Aug 2019
With breakpoints or pause on errors it is easy to find these things looking on command line.
You shouldn't use length in this situation. size( x, 1 ) is much safer if that is what you mean, although x is undefined at that point in the code snippet you gave us also. Your if statement currently does nothing other than assign something to itself.

Sign in to comment.



1 Answer

Answer by Jan
on 20 Aug 2019

[x ,y] = min(Data(i));
x is a scalar. Then x(i) cannot work for i > 1.
By the way, as Adam has said alread, x(i)=x(i) does nothing, so the purpose of the code is unclear.


Sign in to comment.