Puzzler: Count unique nonzero periods in a timeseries without a for loop
3 Ansichten (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 Strategy & Logic 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!