sum of consecutive events below a threshold
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
M = [-2,1,4,-1,-3,-4,3, 3, 1,-2, -3,-1,-3,]
I have an array like M above, I want to find where consecutive numbers are less than -1, and find their mean as well as count:
In this case my first event will be np.mean (-1,-3,-4) and count will be 3 and second will be np.mean (-2,-3,-2,-3) then count will be 4
Thanks in advance
2 commentaires
dpb
le 5 Mai 2019
Either M is mistyped or the second result is wrong...I suppose you meant
M = [-2,1,4,-1,-3,-4,3, 3, 1,-2,-3,-2,-3,]
not
M = [-2,1,4,-1,-3,-4,3, 3, 1,-2, -3,-1,-3,]
as given?
How is this Q? any different than the one you posted just 20 min or so earlier at https://www.mathworks.com/matlabcentral/answers/460360-finding-the-mean-sum-of-consecutive-dry-days-below-1
Remove one or the other; don't post multiple times for the same question if somebody doesn't answer instantaneously.
Réponses (1)
Image Analyst
le 5 Mai 2019
If you have the Image Processing Toolbox, try this:
M = [-2,1,4,-1,-3,-4,3, 3, 1,-2, -3,-1,-3,]
binaryM = M <= -1 % Find locations where M <= -1
props = regionprops(binaryM, 'Area') % Make the counts
counts = [props.Area] % Concatenate all from structure into array.
% Get rid of single counts, where counts == 1
% like when M was = to -2 at the beginning.
counts(counts == 1) = []
Result is
counts =
3 4
2 commentaires
Voir également
Catégories
En savoir plus sur Loops and Conditional Statements 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!