sum of consecutive events below a threshold
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
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 comentarios
dpb
el 5 de Mayo de 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.
Respuestas (1)
Image Analyst
el 5 de Mayo de 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 comentarios
Ver también
Categorías
Más información sobre Loops and Conditional Statements en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!