メインコンテンツ

cell2mat

cell 配列から通常の配列への変換

説明

A = cell2mat(C) は、cell 配列を通常の配列に変換します。

C の内容は、N 次元の四角形への連結に対応した内容でなければなりません。それ以外の場合、結果は定義されません。たとえば、同じ列のセルの内容は、同じ行数である必要はありませんが同じ列数でなければなりません。

Cell array with six cells concatenated into one ordinary array

すべて折りたたむ

数値配列が格納された 4 つのセルからなる cell 配列を 1 つの数値配列に変換します。

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

A = cell2mat(C)
A = 3×4

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

構造体が格納された cell 配列を 1 つの構造体配列に変換します。構造体のフィールドは同じでなければなりません。

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) の 2 番目のフィールドを表示します。

d(2).b
ans = 
'Morning'

R2025a 以降

異なるデータ型を含む cell 配列を通常の配列に変換します。

singledouble の値を含む cell 配列を作成します。

a = single([1 2 3]);
b = double([2 4 6]);
C = {a;b}
C =

  2×1 cell array

    {[1 2 3]}
    {[2 4 6]}

cell 配列を数値配列に変換します。結果の配列は single です。

D = cell2mat(C)
D =

  2×3 single matrix

     1     2     3
     2     4     6

入力引数

すべて折りたたむ

入力 cell 配列。セルの内容は、すべて同じデータ型でなければならず、結果の配列はそのデータ型になります。関数は、構造体が格納されたセルについて、それらの構造体が同じ名前のフィールドをもっていればセルを連結できます。

セルのデータ型は、MATLAB® で 1 つの出力タイプに変換できるデータ型であれば、それぞれで異なっていてもかまいません。基本的なデータ型の組み合わせとその結果の型を示す例については、異なるクラスの有効な組み合わせを参照してください。

cell2mat は、クラスベース オブジェクトを含む cell 配列も受け入れます。クラスベース オブジェクトを結合する方法の詳細については、異なるクラスのオブジェクトの連結を参照してください。

cell2mat は、C の中で入れ子にされたセルは受け入れません。

拡張機能

すべて展開する

バージョン履歴

R2006a より前に導入

すべて展開する