主要内容

用于时间表的代码生成

时间表数据类型是一种适合于带有时间戳行的表格数据的数据类型。与表一样,时间表由面向行和面向列的变量组成。时间表中的每个变量可以有不同的数据类型和不同的大小,但有一个限制:每个变量必须具有相同的行数。

行乘以的值是标记行的时间值。您可以按行时间和变量索引到时间表中。要编入时间表,请使用圆括号()返回子表或花括号{}提取内容。你可以通过它们的名字来引用变量和行乘以向量。有关更多信息,请参见时间表

当您在代码生成中使用时间表时,请遵守这些限制。

定义代码生成时间表

要生成代码,请使用时间表函数。例如,假设MATLAB的输入参数®函数是三个具有相同行数的数组(一个B,C),一个datetime持续时间包含行时间的向量(D),以及具有变量名的单元格数组(vnames).您可以创建一个时间表,其中包含这些数组作为时间表变量。

函数TT = foo (A, B, C, D, vnames)% # codegenTT =表(A, B, C,“RowTimes”D“VariableNames”, vnames);结束

要将数组和表转换为时间表,请使用array2timetabletable2timetable功能。例如,您可以转换输入——- - - - - -N矩阵到时间表,其中矩阵的每一列成为时间表中的变量。使用持续时间向量。

函数TT = foo (A, D, vnames)% # codegenTT = array2timetable (,“RowTimes”D“VariableNames”, vnames);结束

对于代码生成,必须在创建时间表时提供时间表变量名。时间表变量名不必是有效的MATLAB标识符。名称必须由ASCII字符组成,但可以包含任何ASCII字符(如逗号、破折号和空格字符)。

行时间可以是datetime持续时间数据类型。

允许对时间表的操作

对于代码生成,您只能在该表中列出的时间表上进行操作。

操作 例子 笔记

赋值运算符:

TT =时间表(A, B, C,“RowTimes”D“VariableNames”, vnames);TT {: 1} = X;

代码生成不支持使用赋值操作符金宝app:

  • 删除一个变量或一行。

  • 添加一个变量或一行。

索引操作

D =秒(1:10);TT =时间表(A, B, C,“RowTimes”D“VariableNames”, vnames);TT(秒(3:7),1:3);

代码生成支持按位置、变量或行时间金宝app索引和逻辑索引。控件创建的对象也可以创建索引timerangewithtol功能。

代码生成支持:金宝app

  • 带有圆括号的时间表索引,()。

  • 内容索引与花括号,{}。

  • 点符号来访问时间表变量。

连接

TT1 =时间表(A, B, C,“RowTimes”D1,“VariableNames”, vnames);TT2 =时间表(D, E, F,“RowTimes”D2,“VariableNames”, vnames);Tt = [tt1;TT2];

代码生成支持时间表连接。金宝app

  • 对于垂直连接,时间表必须具有具有相同顺序的相同名称的变量。

  • 对于水平连接,时间表必须具有相同的行数。它们也必须有相同的行次,并且顺序相同。

MATLAB支持时间表的工具箱函数金宝app

对于代码生成,你可以使用这些MATLAB工具箱函数的时间表:

相关的话题