|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
求助:请问mMatlab怎样计算月平均值?
1 d& O' |8 [* y6 `0 Q6 b; A. D& b5 Z8 U' w( R% b% K" i: \
7 k+ f; |/ ]( y7 g+ @; l' ]/ u# u
有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个月,每个月一个文件夹,然后读取每个月的平均值,代码如下:
& ?7 E% `& S, N2 ~. tInPath1='C:\Users\Administrator\Desktop\2015\1'; " X2 D% i1 ?* k2 ~7 K7 D! t
Input_dir1=dir(fullfile(InPath1,'*.nc')); 0 T4 r* r- v& ?/ j% u4 G( d1 v: W9 d
Input_length1=length(Input_dir1);( ]* ~ _+ B3 C3 q+ f, W( Y- b% K
a=[];3 Y6 i! r9 Q& y
for i=1:Input_length1
8 V" q+ c" D6 b7 n1 V) Vfilename1=fullfile(InPath1,Input_dir1(i).name);
+ O. K/ `$ c7 H! z' ustr=strcat(filename1)9 U' {' C6 h* e& p
a1=ncread(str,'TG') & `+ k' o1 F) k- L( g3 D
a=[a,a1]6 j8 w/ E' V1 B2 d1 z+ ^5 K* p! }
end
, @2 I* M. A1 \- b5 t) |+ Y, ^x1=mean(a)
1 v* f9 z; R- u然后再整理出每年12个月的数据,然后5年的数据再平均,得到5年月平均的数据,但是这样要手动计算很麻烦。 怎么再上面的代码中加入年和月,让他一次性输出5年月平均的数据? 另外如何不用划分文件夹,一次性在一个文件夹里面读取呢?
, D5 {( f6 ~# V谢谢大佬~
' w( ]; F# D! I, U9 \# N* f2 L& s4 I
|
|