时间序列分割算法-segmentation.rar

  • b3_438826
    了解作者
  • 94.9KB
    文件大小
  • rar
    文件格式
  • 0
    收藏次数
  • VIP专享
    资源类型
  • 0
    下载次数
  • 2022-06-04 12:12
    上传日期
时间序列分割算法-segmentation.rar Novel Online Methods for Time Series Segmentation 详见此文章,复现一下,不一定对
segmentation.rar
  • segmentation
  • ll.m
    136B
  • fsw.m
    1.5KB
  • fsw.asv
    1.5KB
  • myfsw.asv
    1.4KB
  • sfsw.m
    599B
  • ysample.mat
    92KB
  • myfsw.m
    1.5KB
  • sfsw.asv
    601B
  • myswb.m
    1.5KB
内容介绍
%时间序列分割算法FSW load ysample y=ysample(1:1000); num=length(y); %读出长度 delta=2 %FSW中定义的最大误差阈值 i=1; seg_no=1; %第几个分割片段的起点 csp_id=1; %FSW算法中定义的CSP点的位置 lowl=-inf;upl=inf;s(1)=1; %s(seg_no)记录分割点在原时间序列的横坐标的位置 while i<num %分割整个时间序列 i=i+1 ll(s(seg_no),y(s(seg_no)),i,y(i)) %新加入的点与片段起点之间连线的斜率 upl=min(upl,ll(s(seg_no),y(s(seg_no)),i,(y(i)+delta))) %上边界 lowl=max(lowl,ll(s(seg_no),y(s(seg_no)),i,(y(i)-delta))) %下边界 if upl<lowl %如果upl<lowl,则该片段终止,终止点前面的最近的CSP点为分割点 seg_no=seg_no+1 %进入下一个片段 s(seg_no)=csp_id+1 %下一个片段起点为CSP点的右侧点 i=csp_id+1 %从新的片段的起点开始向右计算 lowl=-inf;upl=inf; %初始化 elseif lowl<=ll(s(seg_no),y(s(seg_no)),i,y(i))&&ll(s(seg_no),y(s(seg_no)),i,y(i))<=upl %新加入的点满足该条件,判断为CSP点 csp_id=i; %记录CSP点位置 end seg_no s(seg_no) csp_id %pause end temp=length(s) for i=1:temp-1 ss{i}=y(s(i):s(i+1)-1) end ss{temp}=y(s(temp):end)
评论