How to find longest lasting event

7 Ansichten (letzte 30 Tage)
Attaullah Shafiq
Attaullah Shafiq am 24 Mai 2020
Beantwortet: ahmed ibrahim am 11 Jan. 2021
How to find longest lasting event?
means i wanna Calculate the duration of each event as the difference between 2 function..
  1 Kommentar
dpb
dpb am 24 Mai 2020
If use the duration class variable, then it's a simple as subtraction...

Melden Sie sich an, um zu kommentieren.

Antworten (2)

Image Analyst
Image Analyst am 24 Mai 2020
What form is your event data in? Is it like a binary vector [0,1,1,1,0,0,0,1,1,1,1,1,1,0,0,0]?
% 1's are in the event and 0's are where the event is not happening.
inEvent = logical([0,1,1,1,0,0,0,1,1,1,1,1,1,0,0,0])
% Extract the longest one and sum up the number of indexes of it.
longestDuration = sum(bwareafilt(inEvent, 1))
inEvent =
1×16 logical array
0 1 1 1 0 0 0 1 1 1 1 1 1 0 0 0
longestDuration =
6
  7 Kommentare
dpb
dpb am 24 Mai 2020
@IA, groupsummary is relatively recent addition to the splitapply workflow toolkit -- R2018x? I think or thereabouts.
It's another case of essentially the same functionality as a Toolbox function being migrated to base product excepting w/ a different name and slightly different syntax.
Image Analyst
Image Analyst am 24 Mai 2020
Right you are. Cool, thanks. 👍

Melden Sie sich an, um zu kommentieren.


ahmed ibrahim
ahmed ibrahim am 11 Jan. 2021
What row in the data set does this correspond to (remember that min and max have a 2nd output that gives the row)?

Community Treasure Hunt

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

Start Hunting!

Translated by