重设时间表时间
说明
重设时间表时间任务允许您以交互方式更改时间表的行时间,然后对其变量中的数据进行重采样或聚合。该任务会自动为您的实时脚本生成 MATLAB® 代码。
使用此任务,您可以:
在新的行时间处进行数据插值。
将数据聚合到时间 bin(例如,为了创建一个包含每月数据的季度均值的时间表)。
删除具有重复行时间的行。
通过指定均匀时间步或采样率,将不规则时间表转换为规则时间表。
更多
相关函数
重设时间表时间生成使用 retime
函数的代码。
![](retimelet.png)
打开任务
要在 MATLAB 编辑器中将重设时间表时间任务添加到实时脚本中,请执行以下操作:
在实时编辑器选项卡上,选择任务 > 重设时间表时间。
在脚本的代码块中,键入相关关键字,例如
retime
、timetable
、upsample
或downsample
。从建议的命令自动填充项中选择重设时间表时间。对于某些关键字,任务会自动更新一个或多个对应的参数。
示例
使用实时编辑器任务对时间表数据进行重采样和聚合
此示例说明如何使用重设时间表时间实时编辑器任务对时间表中的数据进行重采样和聚合。您还可以应用不同规则以不同方式调整时间表变量。
重采样数据
使用数据的列向量创建时间表。行时间在 10 到 50 毫秒之间。
Intensity = [100 98.7 95.2 101.4 99.1]'; Time = milliseconds([11 20 34 40.3 49.9])'; TT1 = timetable(Time,Intensity)
TT1=5×1 timetable
Time Intensity
__________ _________
0.011 sec 100
0.02 sec 98.7
0.034 sec 95.2
0.0403 sec 101.4
0.0499 sec 99.1
将重设时间表时间任务添加到您的实时脚本中。对 TT
中的数据重采样。
要指定 100 Hz 的采样率,请使用
Selection method
菜单。要使用线性插值调整
Intensity
变量中的数据,请使用General rule
菜单。
newTimetable=5×1 timetable
Time Intensity
________ _________
0.01 sec 100.14
0.02 sec 98.7
0.03 sec 96.2
0.04 sec 101.1
0.05 sec 99.076
聚合数据
从 bostonTT
MAT 文件中加载第二个时间表。此时间表包括波士顿市的温度、风速和降雨量等测量值。测量值大约相隔六个小时,但不固定。
load bostonTT
Boston
Boston=6×3 timetable
Time Temp WindSpeed Rain
___________________ ____ _________ ____
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
将重设时间表时间任务的第二个实例添加到您的实时脚本中。将数据聚合到每日时间 bin 中。
要指定一天的时间步,请使用
Selection method
菜单。要计算时间表变量的均值,请使用
General rule
菜单。要为
Rain
变量指定不同规则,请使用Exceptions
菜单。添加一个例外,以在每天开始时进行降雨量测量值插值。
newTimetable2=2×3 timetable
Time Temp WindSpeed Rain
___________________ ______ _________ ________
2016-06-09 00:00:00 61.4 1.8333 0.019529
2016-06-10 00:00:00 58.833 4.8333 0.13993
相关示例
参数
输入时间表
— 时间表的名称
下拉列表项
从包含工作区中所有非空时间表的列表中指定名称。
选择方法
— 指定行时间的方法
下拉列表项
指定计算时间表的新行时间的方法。
时间步 - 连续固定间隔行时间之间的时间长度。
采样率 - 固定间隔行时间的采样率或频率。
来自工作区的时间 - 工作区变量,它是
datetime
或duration
值组成的向量。向量中的时间替换时间表的行时间。时间不需要是固定间隔的时间。
一般规则
— 调整数据值的规则
下拉列表项
指定调整时间表变量中数据值的规则。该规则适用于所有变量,除非指定例外情况。您可以对数据值进行重采样或聚合,以便:
用缺失数据指示符或常量值填充空缺。
按新的行时间对数据插值。例如,对在 100 Hz 到 200 Hz 之间测量的数据进行重采样。
将数据聚合到时间 bin 中。例如,基于每小时测量的数据值计算每日均值。
例外
— 调整指定变量的不同规则
下拉列表项
点击添加按钮。然后从出现的变量名称下拉列表中指定一个时间表变量。
要调整指定变量中的数据,请从变量名称右侧的规则下拉列表中选择一个规则。例外的规则可以不同于一般规则。
要为其他时间表变量指定例外,请点击第一个例外右侧的 + 按钮。变量名称和规则的新下拉列表出现在前面的例外下方。
版本历史记录
在 R2020a 中推出R2022a: 如果输入包含的元素超过一百万个,则实时编辑器任务不会自动运行
如果输入包含的元素超过一百万个,则此实时编辑器任务不会自动运行。在以前的版本中,对于任何大小的输入,该任务始终自动运行。如果输入包含大量元素,则由此任务生成的代码可能需要相当长的时间来运行(超过几秒)。
当任务不自动运行时,自动运行指示符会被禁用。您可以在需要时手动运行任务,也可以选择启用任务自动运行。
R2020b: 重设时间表时间实时编辑器任务:使用线性插值作为调整数据的默认一般规则
在 R2020b 中,线性插值是在重设时间表时间实时编辑器任务中调整数据的默认一般规则。在以前的版本中,默认一般规则是用缺失值来填充输出时间表中的空缺。
但是,即使在 R2020b 中,只要满足以下任一条件,默认规则就会恢复为用缺失值填充间隙:
输入时间表的行时间未排序。
输入时间表中至少一个变量的数据类型不是数值、
datetime
或duration
。
MATLAB 命令
您点击的链接对应于以下 MATLAB 命令:
请在 MATLAB 命令行窗口中直接输入以执行命令。Web 浏览器不支持 MATLAB 命令。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)