- 积分
- 431
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2014-6-6
- 最后登录
- 1970-1-1
|
登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
我的数据是17个站点分开的,每个站点里面的数据是这样的,第一列是年,第二列是月,第三列是日,第四列是降水量:
1960 1 1 0
1960 1 2 0.6
。。。。
2011 12 31 0
我想要计算每年持续时间最长的干天(日降水量<1mm)日数,所以我写了这样的程序,刚接触matlab所以只能用最简单的语法来拼凑,
for n = 1:17
data = prec_all{n,1};
% assume that your data contains 52 years and started from 1960
TDim=52; startYear=1960;
Result=zeros([TDim,1]);
% count rainfall days by a for loop
for i=1:TDim
initial=datenum(startYear+i-1, 1, 1)-datenum(startYear, 1, 1)+1;
final=datenum(startYear+i-1, 12, 31)-datenum(startYear, 1, 1)+1;
m=final-initial+1;
extract=zeros([m,1]);
extract(1:m,1)=data(initial:final,4);
for z=1:m
a=0;
days=[];
if extract(z,1)<1
a=a+1;
else a=a;
days=a;
end
end
end
end
程序是不对的,从第三个for循环下来结果就不对了,高手们能帮我指点下吗?有更好的办法能告诉我吗?拜托拜托!
|
|