Info

이 질문은 마감되었습니다. 편집하거나 답변을 올리려면 질문을 다시 여십시오.

Matlab stuck at Warning about Integers

조회 수: 3 (최근 30일)
Mark Dawnson
Mark Dawnson 2019년 1월 16일
마감: MATLAB Answer Bot 2021년 8월 20일
Hi people,
I need help. I'm running a code and I am getting stuck at line 51 that reads:
sortedData = sort(cutData(tstart:tend));
baseline = median(sortedData(1:((0.2)*length(cutData(tstart:tend)))));
deltaF(i) = (cutData(i) - baseline)/baseline;
This is the message I keep getting:
> In scrapAnalysis (line 51)
Warning: Integer operands are required for colon operator when used as index
  댓글 수: 1
Walter Roberson
Walter Roberson 2019년 1월 16일
length(cutData(tstart:tend) is going to be the same as tend-tstart+1 . But suppose that does not happen to be an exact multiple of 5, so 0.2 times the value does not turn out to be an integer?

답변 (3개)

Fangjun Jiang
Fangjun Jiang 2019년 1월 16일
With this, do you get it?
>> a=rand(1,100);
>> b=a(2:10);
>> c=a(2:0.9:10);
Warning: Integer operands are required for colon operator when used as index.

Star Strider
Star Strider 2019년 1월 16일
Without knowing more about ‘cutData’, it’s difficult to provide a specific solution. Subscripts must be integers greater than 0, or logicals
Assuming that ‘t’ is your time vector associated with ‘cutData’, try this:
tstart = ...;
tend = ...;
idx1 = find(t >= tstart, 1, 'first');
idx2 = find(t <= tend, 1, 'last');
sortedData = sort(cutData(idx1:idx2));
Something like that should do what you want. You will have to experiment with it with your code.

Mark Dawnson
Mark Dawnson 2019년 1월 17일
Thanks for all the answers. I'll try these and let you know !
  댓글 수: 1
Star Strider
Star Strider 2019년 1월 17일
It would also help to know the complete error message. (Please copy all the red text in your Command Window and paste it to a Comment here).
There are at least two lines that could be throwing that error. We have no idea which one it is.

이 질문은 마감되었습니다.

Community Treasure Hunt

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

Start Hunting!

Translated by