Finding the start and end indices of 3 or more repeating 0's.

1 visualizzazione (ultimi 30 giorni)
For the array A=[NaN NaN NaN NaN 0 0 0 NaN NaN 0 0 0 0 NaN NaN 0 0]
I need to find the start and end indices of the '0' runs with greater than or equal to 3 zeroes in a row.
So for A, the values I want returned are [5 7;10 13].

Risposta accettata

Azzi Abdelmalek
Azzi Abdelmalek il 7 Feb 2014
A=[NaN NaN NaN NaN 0 0 0 NaN NaN 0 0 0 0 NaN NaN 0 0]
ii=A==0
ii1=strfind([0 ii 0],[0,1])
ii2=strfind([0 ii 0],[1,0])-1
idx=ii2-ii1+1>=3
out=[ii1(idx)' ii2(idx)']

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by