主要内容

ret

重采样或时间表的汇总数据,以及解决重复或不规则倍

描述

例子

TT2 =重新定时(TT1newTimeStep方法返回包含来自的变量的时间表TT1行乘以它们的间隔是时间步长newTimeStep.的ret在的变量函数重新采样或聚集数据TT1指定的函数方法.您可以使用ret:

  • 插入数据值TT1在不同的时间。

  • 将数据聚合到时间箱中(例如,从月度数据创建包含季度方法的时间表)。

  • 删除的行TT1有重复的行乘以。

  • 做一个不规则的时间表,到正规的时间表,因为newTimeStep指定常规行时间。

newTimeStep输入参数是一个指定预定义时间步长的字符向量或字符串。例如,当newTimeStep“每天”,方法“的意思是”,然后TT2包含来自数据的每日方法TT1

第一行的时间TT2是在时间步前的最早排时间吗TT1.行乘以TT2覆盖行时间的范围TT1.然而,TT2可能不包括任何实际的行时间TT1,因为TT1可能没有任何的行乘以落在任何的常规行乘以上TT2

插入插入或填入值TT2对不同的变量使用不同的方法,指定VariableContinuity的属性TT1.有关更多信息,请参见使用不同的方法重新计时和同步时间表变量

若要从多个时间表重新取样或聚合数据,请参见同步

例子

TT2 =重新定时(TT1“常规”,方法“步伐”,dt使用时间步长计算有规则间隔的行时间dt.的dt输入参数是标量持续时间或日历持续时间,指定任意大小的时间步长。行乘以TT2的行乘以的范围TT1

当时间步长不是可以指定为字符向量或字符串的预定义时间步长时,使用此语法。

例子

TT2 =重新定时(TT1“常规”,方法“SampleRate”,Fs使用抽样率计算有规则间隔的行时间Fs.的Fsinput参数是一个正数标量,它指定每秒的采样次数(Hz)。

例子

TT2 =重新定时(TT1新时期方法调整时间表变量数据到时间向量新时期的指定方法方法.的新时期时间向量可以是不规则的,但它必须是一个已排序的datetime或duration向量,并且包含唯一的值。《纽约时报》在新时期成为行次的TT2

例子

TT2 =重新定时(TT1newTimeStep调整时间表数据使用“fillwithmissing”方法。TT2哪里有丢失的数据指标TT2有一个行时间不匹配的任何行时间TT1

如果TT1有重复行时间的行和TT2有匹配重复的行时间吗TT2包含每一组行的第一行TT1复制行乘以匹配项。

TT2 =重新定时(TT1, '常规', '时间步',dt使用时间步长计算有规则间隔的行时间dt并且,在需要的地方插入缺失的数据指示器。

TT2 =重新定时(TT1,“常规”,“SampleRate”,Fs使用抽样率计算有规则间隔的行时间Fs并且,在需要的地方插入缺失的数据指示器。

TT2 =重新定时(TT1新时期返回一个时间表,其中包含丢失的数据指示器新时期不匹配行时间在TT1

例子

TT2 =重新定时(___名称,值使用一个或多个指定的附加选项调整时间表数据名称,值对。您可以将此语法与前面任何语法的输入参数一起使用。

例子

全部折叠

创建时间表数据,大约每小时一次,但在时间上有些不规律。插入数据,以便输出时间表具有规则的每小时行时间。

时间= datetime ({“2015-12-18 07:02:12”“2015-12-18 08:00:47”...“2015年12月18日9时01分37秒”“2015-12-18 10:03:10”...“2015-12-18 10:59:34”});Temp = [37.3; 41.9; 45.7; 42.3; 39.8);压力= [30.1;29.9;30.03;29.9;29.8);TT =时间表(时间、温度、压力)
TT =5×2时间表时间温度压力____________________ ____________ 18-Dec-2015 07:02:12 37.3 30.1 18-Dec-2015 08:00:47 41.9 29.9 18-Dec-2015 09:01:37 45.7 30.03 18-Dec-2015 10:03:10 42.3 29.9 18-Dec-2015 10:59:34 39.8 29.8

要用三次样条插值重新采样,请指定样条的

TT2 =调整时间(TT),“每小时”样条的
TT2 =5×2时间表时间温度压力____________________ ______________ 18- 12 -2015 07:00:00 37.228 30.124 18- 12 -2015 08:00:00 41.824 29.899 18- 12 -2015 09:00:00 45.694 30.029 18- 12 -2015 10:00:00 42.552 29.91 18- 12 -2015 11:00:00 39.808 29.8

创建一个每十五分钟记录一次温度和脉冲读数的时间表。

时间= [分钟(0):分钟(15):分钟(105)]';温度= [98; 97.5; 97.9; 98.1; 97.9; 98; 98.3; 97.8];脉冲= [80; 75; 73; 68; 69; 65; 72; 71]。TT =时间表(时间、温度、脉冲)
TT =8×2时间表时间温度脉冲_______ ____ _____ 0分钟98 80 15分钟75 97.5 30分钟97.9 73 45分钟98.1 68 60分钟97.9 69 75分钟98 65 90分钟72 98.3 105分钟97.8 71

计算每小时读数的平均值。当您在时间容器中聚合数据时,输出时间表的行时间是时间容器的左边缘。

TT2 =调整时间(TT),“每小时”“的意思是”
TT2 =2×2的时间表Time Temp Pulse ______ ______ _____ 0 min 97.875 74 60 min 98 69.25

创建一个时间表,包含时间、温度和压力读数,大约在半小时的标记,但从上午9点的一个测量缺失。

时间= datetime ({“2015-12-18 07:29:53”“2015-12-18 08:00:00”...“2015-12-18 08:31:02”“2015-12-18 09:30:00”});Temp = (37.3; 41.9; 45.7; 39.8);压力= (30.1;29.9;30.03;29.8);TT1 =时间表(时间、温度、压力)
TT1 =4×2时间表时间温度压力  ____________________ ____ ________ 18 - 12月18 - 2015 07:29:53 37.3 30.1 41.9 - 29.9 - 12月- 2015 08:00:00 12月18 - 45.7 - 30.03 - 2015 08:31:02 18 - 12月- 2015 09:30:00 39.8 - 29.8

指定一个30分钟的时间步长。由于30分钟不是预定义的时间步长,因此必须使用“步伐”名称-值对的论点。重新取样数据TT1使用线性插值。

dt =分钟(30);TT2 =调整时间(TT1,“普通”“线性”“步伐”dt)
TT2 =6×2时间表时间温度压力____________________ ______________ 18- 12 -2015 07:00:00 32.736 30.298 18- 12 -2015 07:30:00 37.318 30.099 18- 12 -2015 08:00:00 41.9 29.9 18- 12 -2015 08:30:00 45.573 30 - 12 -2015 09:00:00 42.802 29.917 18- 12 -2015 09:30:00 39.8 29.8

使用数据的列向量创建时间表。行时间在10到50毫秒之间。

强度= [100 98.7 95.2 101.4 99.1]';时间=毫秒([11 20 34 40.3 49.9])';TT1 =时间表(时间、强度)
TT1 =5×1的时间表时间强度__________ _________ 0.011秒100 0.02秒98.7 0.034秒95.2 0.0403秒101.4 0.0499秒99.1

重新取样数据TT1使用100hz的采样率。

TT2 =调整时间(TT1,“普通”“线性”“SampleRate”, 100)
TT2 =5×1的时间表时间强度________ _________ 0.01秒100.14 0.02秒98.7 0.03秒96.2 0.04秒101.1 0.05秒99.076

创建一个包含时间、温度和压力读数的时间表。

时间= datetime ({“2015-12-18 07:29:53”“2015-12-18 08:00:00”...“2015-12-18 08:31:02”“2015-12-18 09:30:00”});Temp = (37.3; 41.9; 45.7; 39.8);压力= (30.1;29.9;30.03;29.8);TT1 =时间表(时间、温度、压力)
TT1 =4×2时间表时间温度压力  ____________________ ____ ________ 18 - 12月18 - 2015 07:29:53 37.3 30.1 41.9 - 29.9 - 12月- 2015 08:00:00 12月18 - 45.7 - 30.03 - 2015 08:31:02 18 - 12月- 2015 09:30:00 39.8 - 29.8

创建一个时间矢量,并在矢量中的时间内插入时间表数据。这个时间点从早上八点开始。如果你用“步伐”名称-值对参数,则输出时间表将在上午7:00开始。使用时间向量的一个原因是,确保输出时间表的开始和结束与您指定的时间一致。

新时期= [datetime (“2015-12-18 08:00:00”(30):分钟):datetime (“2015-12-18 09:30:00”));TT2 =调整时间(TT1,新时期,“线性”
TT2 =4×2时间表时间温度压力  ____________________ ______ ________ 18 - 12月18 - 2015 08:00:00 41.9 29.9 45.573 - 30.026 - 12月- 2015 08:30:00 12月18 - 42.802 - 29.917 - 2015 09:00:00 18 - 12月- 2015 09:30:00 39.8 - 29.8

创建一个时间表,包含时间和风速和风向的测量。

时间= datetime ({“2015-12-18 07:00:00”“2015-12-18 08:03:47”...“2015-12-18 09:00:00”“2015-12-18 10:00:00...“2015-12-18 10:59:34”});=风速(13.4;6.5;7.3;8.5;2.3);WindDirection =分类({'NE'“N”'NE'“西北”' W '});TT1 =时间表(时间,风速,WindDirection)
TT1 =5×2时间表时间WindDirection风速  ____________________ _________ _____________ 18 - 12月- 2015年07:00:00 13.4东北18 - 12月- 2015 08:03:47 6.5 N 18 - 12月- 2015年09:00:00 7.3东北18 - 12月- 2015 10:00:00 8.5西北18 - 12月- 2015 10:59:34 2.3 W

将数据调整为每小时的时间向量。插入缺失的数据指示器TT2在哪里TT1没有关于每小时时间矢量的数据。

TT2 =调整时间(TT1,“每小时”
TT2 =5×2时间表时间风向____________________ _________ _____________ 18-Dec-2015 07:00:00 13.4 NE 18-Dec-2015 08:00:00 NaN  18-Dec-2015 09:00:00 7.3 NE 18-Dec-2015 10:00:00 8.5 NW 18-Dec-2015 11:00:00 NaN 

加载的时间表。调整使用的时间表变量ret函数和不同的方法对不同的变量。

负载温度,风速,以及波士顿雨量测量的时间表。

负载bostonTT波士顿
波士顿=6×3的时间表时间温度风速雨___________________ _________________ 2016-06-09 06:03:00 59.5 0.1 0.05 2016-06-09 12:00:23 63 2.3 0.08 2016-06-09 18:02:57 61.7 3.1 0.13 2016-06-10 06:01:47 55.4 5.7 0.15 2016-06-10 12:06:00 62.3 2.6 0.87 2016-06-10 18:02:57 58.8 6.2 0.33

调整数据,以产生每日平均温度和风速,以及每日的降雨量总和。ret对所有时间表变量应用相同的方法。要应用不同的方法,索引到时间表中去选择变量,并调用ret对于您使用的每个方法。

BOS =波士顿(:,{“临时”“风速”});TT1 =调整时间(BOS,“每天”“的意思是”
TT1 =2×2的时间表时间临时风速  ___________________ ______ _________ 2016-06-09就是61.4 - 1.8333 2016-06-09就是58.833 - 4.8333
BOS =波士顿(:,“雨”);TT2 =调整时间(BOS,“每天”“和”
TT2 =2×1时间表时间下雨  ___________________ ____ 2016-06-09就是0.26 2016-06-09就是1.35

将所有结果合并到一个时间表中,连接TT1TT2

Tt = [tt1 tt2]
TT =2×3的时间表时间临时雨风速  ___________________ ______ _________ ____ 2016-06-09就是61.4 1.8333 0.26 2016-06-09就是58.833 4.8333 1.35

将时间表数据放入每小时的垃圾箱。将时间容器的右边或结束时间指定为行时间。默认情况下,时间容器的左边或起始时间是行时间。

创建一个每隔15分钟测量一次温度和脉冲读数的时间表。

时间=(分钟(15):分钟(15):分钟(105)]';Temp = [97.5; 97.9; 98.1; 97.9; 98; 98.3; 97.8);脉冲= (75;73;68;69;65;72;71);TT =时间表(时间、温度、脉冲)
TT =7×2时间表时间温度脉冲_______ ____ _____ 15分钟97.5 75 30分钟97.9 73 45分钟98.1 68 60分钟97.9 69 75分钟98 65 90分钟72 98.3 105分钟97.8 71

计算每小时读数的平均值。指定输出时间表的行时间是时间仓的右边缘。由于右边缘都包括在内,在60分钟时的读数包括在第一时间仓。

TT2 =调整时间(TT),“每小时”“的意思是”“IncludedEdge”'对'
TT2 =2×2的时间表时间温度脉冲_______ ______ ______ 60分钟97.85 71.25 120分钟98.033 69.333

计算平均值,用左侧边作为行乘以。平均值不同于TT2因为60分钟的阅读已经进入了第二阶段。

TT3 =调整时间(TT),“每小时”“的意思是”
TT3 =2×2的时间表Time Temp Pulse ______ ______ _____ 0 min 97.833 72 60 min 98 69.25

输入参数

全部折叠

输入时间表。

时间步长用于输出时间表中的间隔时间,指定为字符向量。newTimeStep可以是表中任何预定义的时间步骤。

时间步长

描述

“年”

一年

“季度”

一个季度

“月”

一个月

“周”

一个星期

“每天”

有一天,

“每小时”

一个小时

“详细”

一分钟

“第二”

一秒钟

任何大小的时间步骤,指定为日期时间标量或持续时间标量。

数据类型:datetime|持续时间|calendarDuration

采样率,指定为正数值标量。Fs每秒采样次数(Hz)。

新的时间向量,指定为日期时间向量或持续时间向量。新的时间向量必须是列向量。新时期可以具有比不同的行数TT1

用于调整时间表数据的方法,该方法指定为字符向量、字符串标量或函数句柄。您可以使用列出的任何方法来调整数据TT1

填补方法

的行复制数据TT1当行乘以TT2匹配行次数TT1.然后,填充剩下的行TT2缺少数据指标。

若要用常量而不是缺失的数据指示器填充其余行,请指定方法作为“fillwithconstant”并使用“不变”名称-值对的论点。

方法

描述

“fillwithmissing”

用缺失的数据指示器填补空白(例如,对于数值型变量)。

“fillwithconstant”

的值填充空白“不变”名称-值对的论点。默认值为0

近邻法

的行复制数据TT1一排排地TT2根据指定的方法,其行时间是最接近匹配的。TT1必须按行乘以排序。

方法

描述

“以前”

从行时间向量的末尾开始,从输入时间表中最近的前一个邻居复制数据。如果有重复的行次数,那么“以前”最后一个副本。

“下一个”

在输入时间表复制从最近的邻居如下数据,从行倍矢量的开始出发。如果有重复的行次数,那么“下一个”第一个副本。

“最近的”

从输入时间表中最近的邻居复制数据。

插值方法

在插值数据值TT2的相邻行中的数据值TT1.输入时间表必须具有已排序且唯一的行时间。来控制如何在第一行和最后一行之外推断数据TT1,可以使用“EndValues”名称-值对的论点。

方法

描述

“线性”

使用线性插值。

样条的

使用分段三次样条插值。

“pchip”

使用保形分段三次插值。

“makima”

采用改进的Akima三次Hermite插值。

聚合方法

的行聚合数据TT1随时间bin指定的行次数TT2.每一行时间TT2为时间箱的左边,下一个连续行时间为右边。默认情况下,左边包含在时间容器中。要控制时间容器中是否包含左边或右边的容器边,请使用“IncludedEdge”名称-值对的论点。

如果你指定时间向量新时期,然后新时期必须按升序排序。

所有列出的方法都省略了年代,NaTS等缺失的数据指标,除函数.要包含缺失的数据指标,请指定函数作为在聚合数据时包含它们的函数的函数句柄。

方法

描述

“和”

对每个时间仓中的值求和。

“的意思是”

计算每个时间段内值的平均值。

“刺激”

计算每个时间段内值的乘积。

“最小值”

计算每个时间库中的最小值。

“马克斯”

计算每个时间容器中值的最大值。

“数”

计算每个时间容器中的值的数量。

“firstvalue”

使用每个时间容器中的第一个值。

“lastvalue”

使用每个时间容器中的最后一个值。

@func

使用函数句柄指定的函数(例如,@std计算每个时间容器中值的标准差)。函数必须返回一个输出参数是一个标量或一个行向量,并且必须接受空的输入。

默认的方法

默认方法等同于离开方法未指明的。

方法

描述

'默认'(默认)

用缺失的数据指示器填充空白,或者使用每个变量方法(如果它们是由VariableContinuity输入时间表的财产。

名称-值对的观点

指定可选的逗号分隔的对名称,值参数。的名字参数名和价值为对应值。的名字必须出现在引号内。可以以任意顺序指定多个名称和值对参数name1,value1,...,namen,valuen

例子:TT2 =调整时间(TT1,新时期,“常数”,1)创建时间表TT2然后赋值-1的行元素TT2行时间不匹配的行时间TT1

值填充空白时,方法“fillwithconstant”,指定为逗号分隔的对,由“不变”和一个数组。默认值为0.指定的值的数据类型“不变”必须与时间表变量的数据类型兼容。

例子:TT2 =调整时间(TT1,“每小时”、“fillwithconstant”,“常数”,“没有一个”)填补了空白TT2用字符向量“没有”当所有的变量都在TT2包含文本。

当使用插值方法时,用于外推的方法,指定为由逗号分隔的对组成“EndValues”,要么“extrap”或一个标量。如果指定标量,则其数据类型必须与所有时间表变量兼容。

方法

描述

“extrap”(默认)

的指定的方法进行推断方法输入参数

标量

通过用标量填充输入行时间范围之外的空白来推断

例子:TT2 =调整时间(TT1,“每天”,“以前”,“EndValues”,1000年)填补了空白TT2使用前面的行值TT2行时间在行时间的范围内吗TT1,和价值1000在哪里TT2行次数超出这个范围。

要包含在每个时间库中的边,指定为逗号分隔的对,由“IncludedEdge”,要么“左”'对'.每一行时间TT2为时间箱的左边,下一个连续行时间为右边。

包括边缘

描述

“左”(默认)

所有的箱子都包括左边的箱子边,除了最后一个箱子,它包括了两边的边

'对'

所有箱子都包括右箱子边,除了第一个箱子,它包括了两条边

如果您指定“左”,则时间仓包括除了最后仓,其包括两个边缘左边缘。如果您指定'对',则时间箱包括除第一个箱外的右边,第一个箱包括两条边。

例子:TT2 =调整时间(TT1,“每小时”、“说”、“IncludedEdge”,“正确的”)包括每个时间仓的右仓边缘。

兼容性的考虑

全部展开

警告在R2021a开始

扩展功能

介绍了R2016b