1,创建时序对象采用timeseries()
ts = timeseries(datavals,timevals,‘Name’,tsname)
参数说明:datavals 时序对象数据域;timevals 时序对象时间域;tsname 指定的时序对象名字。
2,举例说明
time = [1 2 3];
ata = [1.1 1.2 1.3];
ts = timeseries(data,time,‘name’,‘eg’)
以上三行matlab代码执行后查看ts。
3,访问时序对象用
1> 直接访问对应的域,采样类似C语言结构体的办法,ts.name/ts.data/ts.time
2> 访问某个时间段的数据,如上面例子,访问时间大于1的数据。
index = find(ts.time>1);
index返回对应的数据索引。
3> 删除对应时间段的数据,利用了上面的索引
ts = delsample(ts,‘Index’, index );
4,时序对象对齐——时序对象还可以采样重采样进行对齐,这是时序对象处理数据重要的优势。
本人提供一个函数如下,。
function T1 = TimeAlignment(TS1,TS2)
%对一个时序变量向另一个时序变量的时间对齐
TS1= resample(TS1,TS2.time,‘linear’);% 重新采样(插值)
TS1.Data(isnan(TS1.Data)) = 0;%因为插值有问题Cell_Var_ccp{9}.Data(some)=NaN
end
matlab 时序对象使用
最新推荐文章于 2024-06-27 13:49:01 发布