table のコード生成
table データ型は列方向データまたは表形式データに適したデータ型です。多くの場合、こうしたデータはテキスト ファイルやスプレッドシートに列として格納されます。table は、行と、列方向の変数で構成されます。table 内の各変数は異なるデータ型および異なるサイズをもつことができますが、各変数には、行数が同じでなければなければならないという制限があります。詳細については、tableを参照してください。
コード生成で table を使用する場合は、次の制限に従ってください。
コード生成用の table の定義
コード生成用に MATLAB® コードで table を定義するには、table 関数を使用します。あるいは、array2table 関数、cell2table 関数および struct2table 関数を使用して、配列、cell 配列、および構造体を table に変換することもできます。コード生成では、table の作成時に table 変数名を指定しなければなりません。table 変数の名前は、有効な MATLAB 識別子である必要はありません。変数名には、任意の ASCII 文字 (コンマ、ダッシュ、空白文字など) を含めることができます。
たとえば、A、B、および C が 10 行 1 列の double の配列であり、vnames が列名の cell 配列であるとします。これらの配列を table 変数として使用して table を作成する関数のコードを生成できます。
function T = foo(A,B,C,vnames) %#codegen T = table(A,B,C,'VariableNames',vnames); end
table で実行可能な演算
コード生成では、次に示す table の演算に制限されます。
| 演算 | 例 | メモ |
|---|---|---|
代入演算子: |
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]; | コード生成では table の連結がサポートされます。
|
table をサポートする MATLAB ツールボックス関数
コード生成では、次の MATLAB ツールボックス関数で table を使用できます。