Puzzler: Count unique nonzero periods in a timeseries without a for loop
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Will Kinsman
am 19 Jul. 2016
Kommentiert: Will Kinsman
am 19 Jul. 2016
given: a signal as a time series
return: discrete number of times is is holds a nonzero position
For example:
given: [0,1,0.5,0.7,0,1]
return: 2
given: [0,1,0,0,0,.3,1,0,0,1]
return: 3
given: [0,1]
return: 1
is there a way to do this task in a vector manner as opposed to a for loop that counts nonzero periods as it encounters them and flicks a counter.
0 Kommentare
Akzeptierte Antwort
Azzi Abdelmalek
am 19 Jul. 2016
Bearbeitet: Azzi Abdelmalek
am 19 Jul. 2016
a=[0,1,0,0,0,.3,1,0,0,1]
out=numel(strfind([0 logical(a)],[0 1]))
Weitere Antworten (1)
Siehe auch
Kategorien
Mehr zu Electromechanical 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!