每小时降雨量数据MATLAB的累计和计算

时间:2016-05-30 23:26:11

标签: matlab matrix accumarray

我从1970年到2003年有一个小时的降雨时间序列。我想计算:

  1. n小时值,n = 2,3,6,12,24& 48小时可以通过累积24个连续的1小时数据来计算24小时降雨量数据。 同样,可以通过增加2天的降雨量来计算48小时的降雨量。

  2. 从n小时时间序列,我想计算每年的最大降雨量值。

  3. 同样,我可以计算其他累积期。但是,我需要从n-hrly数据(聚合时间序列)计算年度最大降雨量值的建议,这可以从每年n小时降雨信息的最大值计算。例如,从1970年到2003年,我想提取34个年度最大值对应于2小时,... 24小时和19小时最大值48小时。请在此处找到样本数据集:

    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-hrly值的数组。

0 个答案:

没有答案