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]; | Генерация кода поддерживает табличную конкатенацию.
|
Для генерации кода можно использовать таблицы с этими функциями тулбокса MATLAB: