【MATLAB】数据处理方法汇总

[复制链接]
(1)采样间隔为1h,求天平均的时间序列
& [9 ~+ `0 i' f, g3 a  time_vec=datevec(time);
$ `1 h: X( u$ t# R. K6 ~( M  [s,ii,jj]=unique(time_vec(:,1:3),'rows');6 C$ L* C0 f& ^; C  k

) I2 M- h& V8 |, l/ r  data_daily=accumarray(jj,(1:numel(jj))',[],@(x)nanmean(data_hourly(x,,1));
% _* L: O, W! R; S(2)采样间隔为3min,求天平均的时间序列# g8 o+ X( F7 x2 Q8 E
   %先求小时平均
6 V7 O% e+ Q) W1 Z& i& K  time_vec=datevec(time);
6 O2 _6 F' b& g$ a3 f  [s,ii,jj]=unique(time_vec(:,1:4),'rows');
9 u- [5 i% m/ A# H. Q3 O1 U* t& [: j( R, P: K' x  e+ \  o
  data_hourly=accumarray(jj,(1:numel(jj))',[],@(x)nanmean(data_Min(x,,1));
7 u: o7 r+ Q& G  再用上述方法求天平均。( n) a) L* H& M3 I, N
(3)采样间隔为1h,求2h平均的时间序列
; [$ x. ~% ?7 Y3 L( j5 T9 A% h  flag=0;/ M) R4 R! D  Z% n+ X7 D  _
  for i = 1:2:length(time_hourly)
: n! w3 a/ k' r& r    flag = flag + 1;
, Y( k! z5 g; T    time_2hourly=time_hourly(i,1);! d3 J5 a/ {! N' G8 d3 [) X
    data_2hourly(flag,1)=nanmean(data_hourly(i:i+1,1),1);
. f0 Y6 v' U' l7 q* d  end0 Z- V+ g# O3 L

0 \* \7 I+ t( C: s* r% k  e4 ?9 h6 G, ?7 d7 J
                    ' U" q2 r5 ]" D3 r

5 F: F1 h' T2 W( B; m4 @0 n                                        转载本文请联系原作者获取授权,同时请注明本文来自叶瑞杰科学网博客。
回复

举报 使用道具

相关帖子

全部回帖
暂无回帖,快来参与回复吧
懒得打字?点击右侧快捷回复 【吾爱海洋论坛发文有奖】
您需要登录后才可以回帖 登录 | 立即注册
黄金品质
活跃在2021-12-8
快速回复 返回顶部 返回列表