Main Content

replacedata

(非推奨) データセット変数の置き換え

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

構文

B = replacedata(A,X)
B = replacedata(A,X,vars)
B = replacedata(A,fun)
B = replacedata(A,fun,vars)

説明

B = replacedata(A,X) は、データセット配列 A と同じ変数を使用し、ただし、それらの変数に対するデータを配列 X 内のデータで置換して、データセット配列 B を作成します。関数 replacedata は、X から 1 つ以上の列を使用して、B 内の各変数を順に作成します。X は、A に含まれるすべての変数の列の総数と同じ列数と、A に含まれる観測と同じ数の行数で構成されなければなりません。

B = replacedata(A,X,vars) は、データセット配列 A と同じ変数でデータセット配列 B を作成しますが、配列 X のデータによって置き換えられる vars で指定された変数のデータを使用します。B の残りの変数は、A の対応する変数のコピーです。vars は正の整数、正の整数のベクトル、文字ベクトル、string 配列、文字ベクトルの cell 配列、または logical ベクトルです。B の各変数は、A の対応する変数と同じ数の列をもちます。X は、vars で指定されたすべての変数の列数合計と同じ数の列をもたなければなりません。

B = replacedata(A,fun) または B = replacedata(A,fun,vars) は、関数 funA の変数の値に適用することにより、データセット配列 B を作成します。replacedata はまず、A の変数を単一の配列に水平方向に連結し、次に関数 fun を適用します。指定された A の変数は、連結に適合した型とサイズをもたなければなりません。fun は、単数の入力配列を受け入れて、入力と同じ数の行と列をもつ配列を返す関数のハンドルです。

data = dataset({rand(3,3),'Var1','Var2','Var3'})

% Use ZSCORE to normalize each variable in a dataset array
% separately, by explicitly extracting and transforming the
% data, and then replacing it.
X = double(data);
X = zscore(X);
data = replacedata(data,X)

% Equivalently, provide a handle to ZSCORE.
data = replacedata(data,@zscore)

% Use ZSCORE to normalize each observation in a dataset
% array separately by creating an anonymous function.
data = replacedata(data,@(x) zscore(x,[],2)) 

参考