Main Content

mat2dataset

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

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

説明

ds = mat2dataset(X) は行列を dataset 配列に変換します。

ds = mat2dataset(X,Name,Value) は、追加のオプションを使用して変換を実行します。これらのオプションは 1 つ以上の Name,Value のペアの引数で指定されます。

すべて折りたたむ

既定のオプションを使用して行列をデータセット配列に変換します。

標本データを読み込みます。

load('fisheriris')
X = meas;
size(X)
ans = 1×2

   150     4

行列をデータセット配列に変換します。

ds = mat2dataset(X);
size(ds)
ans = 1×2

   150     4

ds(1:5,:)
ans = 
    X1     X2     X3     X4 
    5.1    3.5    1.4    0.2
    4.9      3    1.4    0.2
    4.7    3.2    1.3    0.2
    4.6    3.1    1.5    0.2
      5    3.6    1.4    0.2

変数名を指定しない場合、mat2dataset は行列名と列番号に基づいて既定の変数名を作成します。

標本データを読み込みます。

load('fisheriris')
X = meas;
size(X)
ans = 1×2

   150     4

X の 4 列それぞれの変数名を指定して、行列をデータセット配列に変換します。

ds = mat2dataset(X,'VarNames',{'SLength',...
'SWidth','PLength','PWidth'});
size(ds)
ans = 1×2

   150     4

ds(1:5,:)
ans = 
    SLength    SWidth    PLength    PWidth
    5.1        3.5       1.4        0.2   
    4.9          3       1.4        0.2   
    4.7        3.2       1.3        0.2   
    4.6        3.1       1.5        0.2   
      5        3.6       1.4        0.2   

行列を、複数列の変数を含むデータセット配列に変換します。

標本データを読み込みます。

load('fisheriris')
X = meas;
size(X)
ans = 1×2

   150     4

がく片の測定値 (最初の 2 列) を SepalMeas という 1 つの変数に、また花弁の測定値 (3 列目と 4 列目) を PetalMeas という 1 つの変数に組み合わせて、行列をデータセット配列に変換します。

ds = mat2dataset(X,'NumCols',[2,2],...
'VarNames',{'SepalMeas','PetalMeas'});
ds(1:5,:)
ans = 
    SepalMeas          PetalMeas      
    5.1         3.5    1.4         0.2
    4.9           3    1.4         0.2
    4.7         3.2    1.3         0.2
    4.6         3.1    1.5         0.2
      5         3.6    1.4         0.2

出力データセット配列は 150 個の観測値と 2 個の変数をもちます。

size(ds)
ans = 1×2

   150     2

入力引数

すべて折りたたむ

データセット配列に変換する入力行列。M 行 N 列の数値行列として指定します。X の各列が、出力の M 行 N 列のデータセット配列の 1 つの変数になります。

データ型: single | double

名前と値の引数

オプションの引数のペアを Name1=Value1,...,NameN=ValueN として指定します。ここで Name は引数名、Value は対応する値です。名前と値の引数は他の引数の後ろにする必要がありますが、ペアの順序は関係ありません。

R2021a より前では、名前と値をそれぞれコンマを使って区切り、Name を引用符で囲みます。

例: 'NumCols',[1,1,2,1] は、入力行列の 3 番目と 4 番目の列を 1 つの変数として組み合わせるよう指定します。

出力データセット配列の変数名。'VarNames' と文字ベクトルの cell 配列または string 配列から構成されるコンマ区切りのペアとして指定します。ds の各変数の変数名を指定しなければなりません。この変数名は MATLAB 識別子として有効な文字列であり、一意でなければなりません。

例: 'VarNames',{'myVar1','myVar2','myVar3'}

出力データセット配列の観測値名。'ObsNames' と文字ベクトルの cell 配列または string 配列から構成されるコンマ区切りのペアとして指定します。この観測名は MATLAB 識別子として有効な文字列である必要はありませんが、一意でなければなりません。

ds の各変数の列数。コンマ区切りのペアとして指定し、'NumCols' と非負の整数のベクトルで構成されます。変数の列数が 1 より大きい場合、mat2datasetX の複数の列を ds で 1 つの変数として組み合わせます。NumCols に割り当てるベクトルは、合計が size(X,2) でなければなりません。

たとえば、8 列の行列を 5 個の変数をもつデータセット配列に変換するには、'NumCols',[1,1,3,1,2] のように、5 つの要素を含み、その合計が 8 になるようなベクトルを指定します。

出力引数

すべて折りたたむ

出力データセット配列。既定の設定では X の列ごとに 1 つの変数を返し、X の行ごとに 1 つの観測値が含まれます。NumCols を指定する場合、ds の変数の数は指定された列数のベクトルの長さに等しくなります。

バージョン履歴

R2012b で導入