finding consecutive numbers in an array
6 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Hi,
I'am trying to find minimum 320 consecutive numbers in an array. Is there any simple way to find it?
2 Kommentare
Jan
am 31 Jan. 2016
Bearbeitet: Jan
am 31 Jan. 2016
Please explain the term "consecutive numbers" in an example. Do you mean, that the difference between two neigboring numbers is +1? Or is -1 accepted also? Do you mean integer values in a double array? Which result is wanted? The first index? What exactly is "minimum 320 numbers"? I assume it is a block of 320 or more elements?
Antworten (1)
Jan
am 31 Jan. 2016
Bearbeitet: Jan
am 31 Jan. 2016
Data = randi([1, 10], 1, 1e6); % Any test data
Len = 5; % 320 in your case
[B, N, Index] = RunLength(diff(Data));
Match = find(N >= Len & B == 1);
% Output to control results:
for k = 1:numel(Match)
iResult = Index(Match(k));
fResult = iResult + N(Match(k)) - 1;
disp(Data(iResult:fResult));
end
2 Kommentare
Siehe auch
Kategorien
Mehr zu Logical finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!