The table
тип данных является типом данных, подходящим для ориентированных на столбцы или табличных данных, который часто хранится в виде столбцов в текстовом файле или в электронной таблице. Таблицы состоят из строк и ориентированных на столбцы переменных. Каждая переменная в таблице может иметь различные типы данных и другой размер с одним ограничением: каждая переменная должна иметь одинаковое число строк. Для получения дополнительной информации см. раздел Таблицы.
Когда вы используете таблицы с генерацией кода, придерживайтесь этих ограничений.
Для генерации кода используйте table
функция. Например, предположим, что входные аргументы в MATLAB® функция является тремя массивами, которые имеют одинаковое число строк и массив ячеек с именами переменных. Можно создать таблицу, которая содержит эти массивы как табличные переменные.
function T = foo(A,B,C,vnames) %#codegen T = table(A,B,C,'VariableNames',vnames); end
Вы можете использовать array2table
, cell2table
, и struct2table
функции для преобразования массивов, массивов ячеек и структур в таблицы. Для примера можно преобразовать массив ячеек входа в таблицу.
function T = foo(C,vnames) %#codegen T = cell2table(C,'VariableNames',vnames); end
Для генерации кода необходимо задать имена табличных переменных при создании таблицы. Имена табличных переменных не должны быть допустимыми идентификаторами MATLAB. Имена должны состоять из символов ASCII, но могут содержать любые символы ASCII (такие как запятые, штрихи и пробелы).
Для генерации кода, вы ограничены операциями с таблицами, перечисленными ниже.
Операция | Пример | Примечания |
---|---|---|
оператор назначения: |
T = table(A,B,C,'VariableNames',vnames);
T{:,1} = D;
| Генерация кода не поддерживает использование оператора назначения
|
операция индексации |
T = table(A,B,C,'VariableNames',vnames);
T(1:5,1:3);
| Генерация кода поддерживает индексацию по положению, переменной или имени строки и логическую индексацию. Генерация кода поддерживает:
|
конкатенация |
T1 = table(A,B,C,'VariableNames',vnames); T2 = table(D,E,F,'VariableNames',vnames); T = [T1 ; T2]; | Генерация кода поддерживает конкатенацию таблицы.
|
Для генерации кода можно использовать таблицы с этими функциями тулбокс: