Класс: набор данных
(Не Рекомендуемый), Применяют функцию к переменным типа массив набора данных
dataset
тип данных не рекомендуется. Чтобы работать с гетерогенными данными, используйте MATLAB®
table
тип данных вместо этого. Смотрите MATLAB table
документация для получения дополнительной информации.
b = datasetfun(fun,A)
[b,c,...] = datasetfun(fun,A)
[b,...] = datasetfun(fun,A,...,'UniformOutput',false)
[b,...] = datasetfun(fun,A,...,'DatasetOutput',true)
[b,...] = datasetfun(fun,A,...,'DataVars',vars)
[b,...] = datasetfun(fun,A,...,'ObsNames',obsnames)
[b,...] = datasetfun(fun,A,...,'ErrorHandler',efun)
b = datasetfun(fun,A)
применяет функцию, заданную fun
к каждой переменной массива набора данных A
, и возвращает результаты в векторный b
. i th элемент b
равно fun
примененный i th переменная набора данных A
. fun
указатель на функцию к функции, которая берет один входной параметр и возвращает скалярное значение. fun
должны возвращаемые значения того же класса каждый раз, когда это называется, и datasetfun
конкатенирует их в векторный b
. Выходные параметры от fun
должен быть один из следующих типов: числовой, логический, символ, структура или ячейка.
Чтобы применить функции, которые возвращают результаты, которые являются нескалярными или различных размеров и типов, используйте 'UniformOutput'
или 'DatasetOutput'
параметры, описанные ниже.
Не используйте порядок в который datasetfun
вычисляет элементы b
, который не задан.
Если fun
связан больше чем с одной встроенной функцией или файлом, (то есть, если это представляет набор перегруженных функций), datasetfun
следует за MATLAB, диспетчеризирующим правила в вызывании функции. (См. Порядок приоритета функций.)
[b,c,...] = datasetfun(fun,A)
, где fun
указатель на функцию к функции, которая возвращает несколько выходных параметров, возвращает векторы b
C
..., каждый соответствующий одному из выходных аргументов fun
. datasetfun
вызовы fun
каждый раз со столькими же выходных параметров, сколько существует в вызове datasetfun
. fun
может возвратить выходные аргументы, имеющие различные классы, но класс каждого выхода должен быть тем же каждым разом fun
называется.
[b,...] = datasetfun(fun,A,...,'UniformOutput',false)
позволяет вам задавать функциональный fun
это возвращает значения различных размеров или типов. datasetfun
возвращает массив ячеек (или несколько массивов ячеек), где i th ячейка содержит значение fun
примененный i th переменная набора данных A
. Установка 'UniformOutput'
к true
эквивалентно поведению по умолчанию.
[b,...] = datasetfun(fun,A,...,'DatasetOutput',true)
указывает что выход (выходы) fun
возвращены как переменные в массиве набора данных (или нескольких массивах набора данных). fun
должны возвращаемые значения с одинаковым числом строк каждый раз, когда это называется, но это может возвращаемые значения любого типа. Переменные в выходном массиве (массивах) набора данных имеют те же имена как переменные во входе. Установка 'DatasetOutput'
к false
(значение по умолчанию), указывает что тип выхода (выходов) от datasetfun
определяется 'UniformOutput'
.
[b,...] = datasetfun(fun,A,...,'DataVars',vars)
позволяет вам применять fun
только к переменным набора данных в A
заданный vars
Вар
положительное целое число, вектор из положительных целых чисел, вектора символов, массива строк, массива ячеек из символьных векторов или логического вектора.
[b,...] = datasetfun(fun,A,...,'ObsNames',obsnames)
задает имена наблюдения для набора данных выход когда 'DatasetOutput'
true
.
[b,...] = datasetfun(fun,A,...,'ErrorHandler',efun)
, где efun
указатель на функцию, задает функцию MATLAB, чтобы вызвать если вызов fun
сбои. Функция обработки ошибок вызвана со следующими входными параметрами:
Структура с полями identifier
сообщение
, и index
, соответственно содержа идентификатор ошибки, которая произошла, текст сообщения об ошибке и линейный индекс во входной массив (массивы), в котором произошла ошибка
Набор входных параметров, в которых перестал работать вызов функции
Функция обработки ошибок должна или повторно выдать ошибку или возвратить то же количество выходных параметров как fun
. Эти выходные параметры затем возвращены как выходные параметры datasetfun
. Если 'UniformOutput'
верно, выходные параметры обработчика ошибок должны также быть скалярами того же типа как выходные параметры fun
. Например, следующий код мог быть сохранен в файле как функция обработки ошибок:
function [A,B] = errorFunc(S,varargin) warning(S.identifier,S.message); A = NaN; B = NaN;
Если функция обработки ошибок не задана, ошибка от вызова до fun
повторно выдан.