why do I receive "Index in position 1 is invalid. Array indices must be positive integers or logical values"
2 views (last 30 days)
Daniel Pollard on 2 Sep 2021
i and j in MATLAB both have the default value of the complex unit. When you say
for i = 1:26
you override this, so now i takes the value in that for loop.
When you say
for i = j
you then reset i to be equal to the complex unit again. This is not an integer or logical so cannot be used as an index. I supsect what you want to do is
for ii = 1:26
for jj = 1:26
More Answers (1)
KSSV on 2 Sep 2021
In MATLAB the indexing should be always positive integers and/ or logical.
A = rand(1,10) ;
A(1) % no error
A(10) % no error
idx = A>0.5
A(idx) % no error
A(1.5) % error becuase 1.5 is not integer
A(-1) % error neghative not allowed