Main Content

dataset2struct

クラス: dataset

(非推奨) データセット配列の構造体への変換

dataset データ型は推奨されません。異種混合データを処理するには、代わりに MATLAB® table データ型を使用します。詳細は、MATLAB table ドキュメンテーションを参照してください。

構文

S = dataset2struct(D)
S = dataset2struct(D,'AsScalar',true)

説明

S = dataset2struct(D) は、データセット配列を構造体配列に変換します。D の各変数は S 内のフィールドになります。D が M 行 N 列のデータセット配列の場合、S は M 行 1 列で、N 個のフィールドが設定されます。D に観測名が含まれる場合、S ではこれらの名前が追加のフィールド ObsNames に指定されます。

S = dataset2struct(D,'AsScalar',true) はデータセット配列をスカラー構造体に変換します。D の各変数は S 内のフィールドになります。D が M 行 N 列のデータセット配列の場合、S は N 個のフィールドをもち、各フィールドが M 行になります。D に観測名が含まれる場合、S ではこれらの名前が追加のフィールド ObsNames に指定されます。

入力引数

D

M 行 N 列のデータセット配列。

出力引数

S

N 個のフィールドをもつ M 行 1 列の構造体配列。入力データセット配列に観測名が含まれる場合、S に追加のフィールド ObsNames が作成されます。

'AsScalar',true を指定した場合、S はN 個のフィールドをもち、それぞれが M 行もつスカラー構造体になります。

すべて展開する

標本のデータセット配列を読み込みます。

load('hospital')

観測値と変数のサブセットのみが含まれるデータセット配列 D を作成します。

D = hospital(1:8,{'LastName','Sex','Age'});
size(D)
ans = 1×2

     8     3

データセット配列 D は 8 個の観測値と 3 個の変数をもちます。

D を構造体配列に変換します。

S = dataset2struct(D)
S=8×1 struct array with fields:
    ObsNames
    LastName
    Sex
    Age

構造体はデータセット配列の 8 個の観測値に対応する 8x1です。D に観測名が含まれるため、S には追加のフィールド ObsNames も作成されます。

S の最初の要素のフィールド データを表示します。

S(1)
ans = struct with fields:
    ObsNames: 'YPL-320'
    LastName: 'SMITH'
         Sex: Male
         Age: 38

この情報はデータセット配列の最初の観測 (行) に対応します。

標本のデータセット配列を読み込みます。

load('hospital')

観測値と変数のサブセットのみが含まれるデータセット配列 D を作成します。

D = hospital(1:8,{'LastName','Sex','Age'});
size(D)
ans = 1×2

     8     3

データセット配列 D は 8 個の観測値と 3 個の変数をもちます。

D をスカラー構造体配列に変換します。

S = dataset2struct(D,'AsScalar',true)
S = struct with fields:
    ObsNames: {8x1 cell}
    LastName: {8x1 cell}
         Sex: [8x1 nominal]
         Age: [8x1 double]

スカラー構造体のフィールド内のデータは、データセット配列の 8 個の観測値に対応する 8x1です。D に観測名が含まれるため、S には追加のフィールド ObsNames も作成されます。

LastName フィールドのデータを表示します。

S.LastName
ans = 8x1 cell
    {'SMITH'   }
    {'JOHNSON' }
    {'WILLIAMS'}
    {'JONES'   }
    {'BROWN'   }
    {'DAVIS'   }
    {'MILLER'  }
    {'WILSON'  }

構造体フィールド LastName には、元のデータセット配列変数 LastName にあったデータがすべて含まれます。