sum of consecutive events below a threshold
2 ビュー (過去 30 日間)
古いコメントを表示
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 件のコメント
dpb
2019 年 5 月 5 日
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.
回答 (1 件)
Image Analyst
2019 年 5 月 5 日
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
参考
カテゴリ
Help Center および File Exchange で Loops and Conditional Statements についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!