|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
求助:请问mMatlab怎样计算月平均值?% H' m; U$ F7 L
% q' t/ c/ J5 |( S8 J: j2 p9 A1 b" L6 W |. Q7 l9 Z* s
有5年的日数据(2011-2015),放在一个文件夹中,排列方式是test0510.clm2.h0.2011-01-01-00000.nc test0510.clm2.h0.2011-01-02-00000.nc .... test0510.clm2.h0.2015-12-31-00000.nc 我想要计算5年月TG的平均值,并且plot出月平均。 读取nc文件中的TG字段的方法是: a=ncread(str,'TG') 。我目前的想法是把所有数据分成5年,每年一个文件夹,然后每个文件夹又分为12个月,每个月一个文件夹,然后读取每个月的平均值,代码如下:4 K# Z) l+ }7 J: \4 ` y: H
InPath1='C:\Users\Administrator\Desktop\2015\1'; 8 p+ ~, N. a" I+ B
Input_dir1=dir(fullfile(InPath1,'*.nc')); ! f& X+ u- F& t2 A" d. j0 d
Input_length1=length(Input_dir1);: I$ S6 \& d- N; h, ]$ J j
a=[];3 | J( p# W7 q8 d7 i
for i=1:Input_length1
. _' r4 v2 ~- ifilename1=fullfile(InPath1,Input_dir1(i).name);
( J7 u5 Y* g& C+ q* Vstr=strcat(filename1); K$ T; T" v/ A& B$ p' X2 ?( L
a1=ncread(str,'TG')
J4 H1 q! ^1 _0 m1 `a=[a,a1]% |. b) y- R! c1 ~7 g6 T
end
9 ]" f) w; N* Q# d+ m* |x1=mean(a)
/ e) ^0 d _5 V& A7 j p0 ~3 E8 b然后再整理出每年12个月的数据,然后5年的数据再平均,得到5年月平均的数据,但是这样要手动计算很麻烦。 怎么再上面的代码中加入年和月,让他一次性输出5年月平均的数据? 另外如何不用划分文件夹,一次性在一个文件夹里面读取呢?
. n& I' l* ]& E. Q! ] z谢谢大佬~
- R$ l# O/ j! ]8 c
' Y+ @: P* q; T0 ^2 [ |
|