Averaging every n step column and m step row
古いコメントを表示
Hi, Please help me to resolve the problem I have matrix 3D 8x84 below
X is time (January 2004 - January 2012)
Y is longitude
Z is Value
X = [01-2004 01-2004 01-2004 01-2004 01-2004 01-2004 01-2004 01-2004
02-2004 02-2004 02-2004 02-2004 02-2004 02-2004 02-2004 02-2004
: : : : : : : :
12-2011 12-2012 12-2012 12-2012 12-2012 12-2012 12-2012 12-2012]
Y = [40 50 60 70 80 90 100 110
40 50 60 70 80 90 100 110
: : : : : : : :
40 50 60 70 80 90 100 110]
Z = [23 35 63 45 23 34 55 32
14 23 34 43 18 26 44 22
: : : : : : : :
21 43 65 22 86 43 66 33]
I want to averaging this matrix every month in every longitude. This would averaging Value at row 1,13,25,37,49,61,73, on longitude(1,1) So I have 3D matrix 8 x 12 (8 point longitude and 12 point monthly) Anyone can help?
採用された回答
その他の回答 (1 件)
Andrei Bobrov
2013 年 5 月 7 日
Z = randi([14 66],108,8); % eg
mns = ndgrid(1:12,2004:2012);
[ln,ln] = ndgrid(1:numel(mns),1:8);
Zout=accumarray([repmat(mns(:),size(ln,2),1),ln(:)],Z(:),[],@mean);
カテゴリ
ヘルプ センター および File Exchange で Matrix Indexing についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!