exponenta event banner

cell2mat

Преобразование массива ячеек в обычный массив базового типа данных

Синтаксис

Описание

пример

A = cell2mat(C) преобразует массив ячеек в обычный массив. Все элементы массива ячеек должны содержать один и тот же тип данных, а результирующий массив должен иметь такой тип данных.

Содержание C должна поддерживать конкатенацию в N-мерный прямоугольник. В противном случае результаты не определены. Например, содержимое ячеек в одном столбце должно иметь одинаковое количество столбцов, хотя в них не обязательно должно быть одинаковое количество строк (см. рисунок).

Примеры

свернуть все

Преобразование числовых массивов в четырех ячейках массива ячеек в один числовой массив.

C = {[1],    [2 3 4];
     [5; 9], [6 7 8; 10 11 12]}
C=2×2 cell array
    {[       1]}    {[   2 3 4]}
    {2x1 double}    {2x3 double}

A = cell2mat(C)
A = 3×4

     1     2     3     4
     5     6     7     8
     9    10    11    12

Преобразование структур в массиве ячеек в один массив структур. Структуры должны иметь одинаковые поля.

s1.a = [1 2 3 4];
s1.b = 'Good';
s2.a = [5 6; 7 8];
s2.b = 'Morning';
c = {s1,s2};
d = cell2mat(c)
d=1×2 struct array with fields:
    a
    b

Просмотр первого поля структуры d(1).

d(1).a
ans = 1×4

     1     2     3     4

Отображение второго поля d(2).

d(2).b
ans = 
'Morning'

Входные аргументы

свернуть все

Входной массив ячеек, в котором все ячейки содержат данные одного типа. cell2mat принимает числовые, логические или символьные данные в ячейках Cили структуры с одинаковыми именами полей и типами данных. cell2mat не принимает объекты или вложенные ячейки в C.

Расширенные возможности

Представлен до R2006a