|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
求助:请问mMatlab怎样计算月平均值?; _1 G# E# l: _; F
8 G7 T$ U. Y$ \! _; z0 {- P8 W Z. }1 t/ g) q: B# `
有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个月,每个月一个文件夹,然后读取每个月的平均值,代码如下:; {# u4 U7 A- {$ E! K
InPath1='C:\Users\Administrator\Desktop\2015\1'; $ Q1 [! x+ T# A5 g) `
Input_dir1=dir(fullfile(InPath1,'*.nc')); # M& K. a+ l3 `/ i
Input_length1=length(Input_dir1);; t X* R. s) \! o3 o+ s7 V1 e. X
a=[];& Y$ p! M* V# K( |' C- m
for i=1:Input_length1. B. G$ n9 z4 V7 Z8 I" r7 P
filename1=fullfile(InPath1,Input_dir1(i).name);$ ]3 k0 @- V4 j1 B' }4 V8 ^
str=strcat(filename1)
/ q, z( U l. m0 j8 C. wa1=ncread(str,'TG') 8 c( A$ U' _) v0 G
a=[a,a1]1 [8 j2 V: z% u8 j1 x D4 y
end
( }5 s& n8 D+ E9 c6 jx1=mean(a). b/ D0 I% k% E' W
然后再整理出每年12个月的数据,然后5年的数据再平均,得到5年月平均的数据,但是这样要手动计算很麻烦。 怎么再上面的代码中加入年和月,让他一次性输出5年月平均的数据? 另外如何不用划分文件夹,一次性在一个文件夹里面读取呢?
1 w" e. k3 v% Z9 I, j谢谢大佬~
@! M+ I5 E' S# g9 C4 Q I4 g1 E* a
|
|