Info

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

this code shows error?

2 views (last 30 days)
Dhines
Dhines on 26 Feb 2013
Closed: MATLAB Answer Bot on 20 Aug 2021
S=S(1:f-1,f+1:length(S))
,,,, error:?? Index exceeds matrix dimensions.

Answers (2)

Walter Roberson
Walter Roberson on 26 Feb 2013
Yes, that would occur if S is not two-dimensional and at least f-1 elements in the first dimension and length(S) elements in the second dimension.
Are you possibly trying to remove element #f from S? If so then
S(f) = [];
or
S = S([1:f-1, f+1:numel(S)]);

Jan
Jan on 26 Feb 2013
Another guess:
Did you define "length" as a variable? Then "length(S)" might fail. Test this by:
dbstop if error
% start the code until Matlab stops at the problem. Then:
which length
  2 Comments
Dhines
Dhines on 26 Feb 2013
it is variable sir. i defined it. length value is 50
Jan
Jan on 27 Feb 2013
Defining "length" as a variable is a bad idea, because you cannot use the command length() afterwards. If "length" is 50, it has a single element only. Then "length(S)" must fail if S has any value different from 1.

Community Treasure Hunt

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

Start Hunting!