Calculate mean of matrix for specific interval
1 回表示 (過去 30 日間)
古いコメントを表示
Hi all,
I have elevation data stored in a 121x721 matrix called DEM.
I want to calculate 2 things:
1) the cross-sectionally averaged mean elevation along the flume. i.e. the mean elevation per column of matrix DEM. (This works OK)
2) The cross-sectionally averaged mean elevation along the flume for DEM(11:110). So without the edges. (Does not work yet)
My code works for the first but not for the second thing I try to calculate.
See the minimal working example below to see the code I used.
What I need is a 1x721 array of the mean value of columns in DEM between 11 and 110.
Hope this makes sense and someone can point me in the right direction.
Thanks
%% MWE
% DEM contains a digital elevation model (elevation data).
DEM = rand(121,721);
% calcultate DEM means for full DEM
DEM_mean = mean(DEM); % this returns a 1x721 array which is what I need
% calculate DEM means for specific interval of DEM
DEM_mean2 = mean(DEM,11:110); % this returns a 121x721 matrix, but I need a 1x721 array like above.
0 件のコメント
採用された回答
Konrad
2021 年 9 月 2 日
Hi Pelle,
you need to index your variable DEM correctly:
DEM_mean2 = mean(DEM(11:110,:));
Best, Konrad
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Resizing and Reshaping Matrices についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!