replacedata

Класс: набор данных

(Не Рекомендуемый) Заменить переменные набора данных

The 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) создает массив набора данных B с теми же переменными, что и массив набора данных A, но с данными для этих переменных заменены данными в массиве X. replacedata создает каждую переменную в B использование одного или нескольких столбцов из X, по порядку. X должно иметь столько столбцов, сколько всего столбцов во всех переменных в A, и столько строк, сколько A имеет наблюдения.

B = replacedata(A,X,vars) создает массив набора данных B с теми же переменными, что и массив набора данных A, но с данными для переменных, указанных в vars заменяется данными в массиве X. Остальные переменные в B являются копиями соответствующих переменных в A. vars - положительное целое число, вектор положительных целых чисел, вектор символов, строковые массивы, массив ячеек векторов символов или логический вектор. Каждая переменная в B имеет столько столбцов, сколько соответствующая переменная в A. X должно иметь столько столбцов, сколько всего столбцов во всех переменных, заданных в vars.

B = replacedata(A,fun) или B = replacedata(A,fun,vars) создает массив набора данных B путем применения функции fun к значениям в Aпеременные. 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)) 

См. также