How to find longest lasting event

7 vues (au cours des 30 derniers jours)
Attaullah Shafiq
Attaullah Shafiq le 24 Mai 2020
How to find longest lasting event?
means i wanna Calculate the duration of each event as the difference between 2 function..
  1 commentaire
dpb
dpb le 24 Mai 2020
If use the duration class variable, then it's a simple as subtraction...

Connectez-vous pour commenter.

Réponses (2)

Image Analyst
Image Analyst le 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 commentaires
dpb
dpb le 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 le 24 Mai 2020
Right you are. Cool, thanks. 👍

Connectez-vous pour commenter.


ahmed ibrahim
ahmed ibrahim le 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)?

Catégories

En savoir plus sur Logical dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by