我有一个从 1970 年到 2003 年的每小时降雨时间序列。我想计算:
n 小时值,n = 2、3、6、12、24 和 48 小时。24 小时降雨数据可以通过累积 24 个连续的 1 小时数据来计算。同样,可以通过添加 2 天的降雨量值来计算 48 小时的降雨量。
从 n-hr 时间序列中,我想计算每年的最大降雨量。
同样,我可以计算其他积累期。但是,我需要从 n 小时数据(聚合时间序列)计算年最大降雨量值的建议,该数据可以从每年 n 小时降雨量信息的最大值计算。例如,从 1970 年到 2003 年,我想提取对应于 2、...24 小时的 34 个年度最大值和 48 小时的 19 个年度最大值。请在此处找到示例数据集:
https://docs.google.com/document/d/1e8g54c6KDw8lwdQ53xi0Bs9fJmasTqbIk2n4LbKA-gM/edit
第一、二、三、四列分别表示年、月、日、值。
我试过这段代码:
ny_p = []; Ann_Max = [];grp_pr = [];
for yr = 1970:1975
i = yr - 1969;
matched = ismember(Precip_Final(:,1), yr, 'rows');
grp_pr = Precip_Final(matched,4); % extracting hourly value of the same year
[nrow,ncol] = size(grp_pr);
for row = 6:nrow % to get 6~ hourly sum
p_new = sum(grp_pr(row-5:row));
ny_p(end+1) = p_new;
end
Max_p = max(ny_p);
Ann_Max = [Ann_Max;Max_p];
clear matched; clear grp_pr; clear i; clear Max_p;
end
我编辑了我的代码。现在的问题是:在矩阵 ny_p 中,早年的值也在运行时被存储。我想在矩阵 Ann_Max 中获取每年的最大 n 小时值数组。