Info

此问题已关闭。 请重新打开它进行编辑或回答。

this code shows error?

3 次查看(过去 30 天)
Dhines
Dhines 2013-2-26
关闭: MATLAB Answer Bot 2021-8-20
S=S(1:f-1,f+1:length(S))
,,,, error:?? Index exceeds matrix dimensions.

回答(2 个)

Walter Roberson
Walter Roberson 2013-2-26
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 2013-2-26
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 个评论
Dhines
Dhines 2013-2-26
it is variable sir. i defined it. length value is 50
Jan
Jan 2013-2-27
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!

Translated by