6.3.5 Обработка данных в массивах ячеек
Данные, хранящиеся в массиве ячеек, могут быть обработаны несколькими способами, в зависимости от фактических данных. Самый простой способ обработки этих данных — перебор их с использованием одной или нескольких for петель. Такую же идею можно реализовать проще с помощью функции cellfun, которая вызывает заданную пользователем функцию для всех элементов массива ячеек. См. cellfun.
Альтернативный способ — преобразование данных в другой контейнер, например, матрицу или структуру данных. В зависимости от данных это возможно с использованием функций cell2mat и cell2struct.
- : m = cell2mat (c) ¶
-
Преобразовать массив ячеек c в матрицу путем конкатенации всех элементов c в гиперпрямоугольник.
Элементы c должны быть числовыми, логическими или символьными матрицами; или массивами ячеек; или структурами; и
catони должны быть совместимы для конкатенации.
- : S = cell2struct (cell, fields) ¶
- : S = cell2struct (cell, fields, dim) ¶
-
Преобразовать cell в структуру.
Количество полей в fields должно совпадать с количеством элементов в cell вдоль измерения dim, то есть
numel (fields) == size (cell, dim). Если dim опущено, принимается значение 1.S = cell2struct ({"Peter", "Hannah", "Robert"; 185, 170, 168}, {"Name","Height"}, 1); S(1) ⇒ { Name = Peter Height = 185 }См. также: struct2cell, cell2mat, struct.
© 1996–2023 The Octave Project Developers
Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies.
Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one.Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions.
https://docs.octave.org/v8.1.0/Processing-Data-in-Cell-Arrays.html