Averaging sections of a given column
2 ビュー (過去 30 日間)
古いコメントを表示
Suppose I have a column vector A=[1 3 -999 4 9 8 -999 3 5]; I need to get average of each 3 sections. The problem is, if any section contains -999, I need to avoid it and get the average of rest of the numbers. For an example, for the 1st three numbers, average has to be (1+3)/2.
Please help me with that. Thanks.
3 件のコメント
Image Analyst
2017 年 7 月 28 日
編集済み: Image Analyst
2017 年 7 月 28 日
That seems inadvisable. Why do you want nans in there instead of the very simple approach I showed you below?????
MSP, that should have been in the answer section below since you intended it as an answer rather than a comment (like asking for more information).
回答 (1 件)
Image Analyst
2017 年 7 月 28 日
If you have the Image Processing Toolbox you can use regionprops():
A=[1 3 -999 4 9 8 -999 3 5]
props=regionprops(A~=-999, A, 'MeanIntensity');
sectionMeans = [props.MeanIntensity]
You get:
sectionMeans =
2 7 4
0 件のコメント
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!