exponenta event banner

Создание кода для таблиц

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, поддерживающие таблицы

Для создания кода можно использовать таблицы со следующими функциями панели инструментов MATLAB:

Связанные темы