dmarrayfun (DataMatrix)

Примените функцию к каждому элементу в объекте DataMatrix

Синтаксис

DMObjNew1 = dmarrayfun(Func, DMObj1)
DMObjNew1 = dmarrayfun(Func, DMObj1, DMObj2, ...)
[DMObjNew1, DMObjNew2, ...] = dmarrayfun(Func, DMObj1, ...)
[DMObjNew1, ...] = dmarrayfun(Func, DMObj1, ...'UniformOutput', UniformOutputValue, ...)
[DMObjNew1, ...] = dmarrayfun(Func, DMObj1, ...'DataMatrixOutput', DataMatrixOutputValue, ...)
[DMObjNew1, ...] = dmarrayfun(Func, DMObj1, ...'Rows', RowsValue, ...)
[DMObjNew1, ...] = dmarrayfun(Func, DMObj1, ...'Columns', ColumnsValue, ...)
[DMObjNew1, ...] = dmarrayfun(Func, DMObj1, ...'ErrorHandler', ErrorHandlerValue, ...)

Входные параметры

Func

Указатель на функцию для функции, которая возвращает один или несколько скаляров и возвращает значения того же класса каждый раз, он называется.

DMObj1

Объект DataMatrix, такой, как создано DataMatrix (конструктор Object).

DMObj2

Любое из следующего:

  • Объект DataMatrix, такой, как создано DataMatrix (конструктор Object)

  • Числовой массив MATLAB®

Примечание

DMObj2 и последующие входные объекты или массивы должны быть одного размера (количество строк и столбцов) как DMObj1.

UniformOutputValue

Задает, должен ли Func возвратить выходные значения без инкапсуляции в массиве ячеек. Выбором является true (значение по умолчанию) или false. Если true, dmarrayfun должен возвратить скалярные значения, которые могут быть конкатенированы в массив. Эти значения могут также быть массивом ячеек. Если false, dmarrayfun возвращает массив ячеек (или несколько массивов ячеек), где I, J th ячейка содержит значение, равное Func(DMObj1(I,J),...).

DataMatrixOutputValue

Задает, должны ли возвращаемые значения быть объектами DataMatrix. Выбором является true (значение по умолчанию) или false. Если вы устанавливаете свойство 'UniformOutput' на false, это свойство проигнорировано.

RowsValue, ColumnsValue

Задает строки или столбцы, к которым можно применить функцию. Выбор:

  • Положительное целое число

  • Вектор положительных целых чисел

  • Вектор символов, задающий строку или имя столбца

  • Массив ячеек из символьных векторов

  • Логический вектор

ErrorHandlerValueЗадает указатель на функцию к функции, которую вызывает dmarrayfun, если вызов Func перестал работать.

Выходные аргументы

DMObjNew1, DMObjNew2Объекты DataMatrix, созданные из применения функции к каждому элементу в одном или нескольких объектах DataMatrix. Размер (количество строк и столбцов), имена строки и имена столбцов совпадет с DMObj1.

Описание

DMObjNew1 = dmarrayfun(Func, DMObj1) применяет функцию, заданную Func к каждому элементу в DMObj1, объекте DataMatrix, и возвращает результаты в DMObjNew1, новом объекте DataMatrix. DMObjNew1 имеет тот же размер (количество строк и столбцов), имена строки и имена столбцов как DMObj1. I, J th элемент DMObjNew1 равен Func(DMObj1(I,J)), где Func является указателем на функцию для функции, которая берет один входной параметр, возвращает одно скалярное значение и возвращает значения того же класса каждый раз, когда это называется.

DMObjNew1 = dmarrayfun(Func, DMObj1, DMObj2, ...) выполняет функцию, заданную Func с помощью элементов в DMObj1, DMObj2, и т.д. как входные параметры. I, J th элемент DMObjNew1 равен Func(DMObj1(I,J), DMObj2(I,J), ...), где Func является указателем на функцию для функции, которая берет несколько входных параметров, возвращает один скаляр и возвращает значения того же класса каждый раз, когда это называется.

[DMObjNew1, DMObjNew2, ...] = dmarrayfun(Func, DMObj1, ...) выполняет функцию, заданную Func с помощью элементов в DMObj1, и возможно других входных параметров. Func является указателем на функцию для функции, которая берет один или несколько входных параметров, возвращает несколько скаляров и возвращает значения того же класса каждый раз, когда это называется. Это возвращает объекты DataMatrix DMObjNew1, DMObjNew2, и т.д. с каждым соответствием одним из выходных параметров Func. Выходные параметры Func могут иметь различные классы, однако, но каждый вывод должен быть тем же каждым разом, когда это называется.

[DMObjNew1, ...] = dmarrayfun(Func, DMObj1, ...'PropertyName', PropertyValue, ...) вызывает dmarrayfun с дополнительными свойствами, которые используют имя свойства / пары значения свойства. Можно задать одно или несколько свойств в любом порядке. Каждый PropertyName должен быть заключен в одинарные кавычки и нечувствительный к регистру. Это имя свойства / пары значения свойства следующие:

[DMObjNew1, ...] = dmarrayfun(Func, DMObj1, ...'UniformOutput', UniformOutputValue, ...) задает, должен ли Func возвратить выходные значения без инкапсуляции в массиве ячеек. Выбором является true (значение по умолчанию) или false. Если true, dmarrayfun должен возвратить скалярные значения, которые могут быть конкатенированы в массив. Эти значения могут также быть массивом ячеек. Если false, dmarrayfun возвращает массив ячеек (или несколько массивов ячеек), где I, J th ячейка содержит значение, равное Func(DMObj1(I,J),...).

[DMObjNew1, ...] = dmarrayfun(Func, DMObj1, ...'DataMatrixOutput', DataMatrixOutputValue, ...) задает, должны ли возвращаемые значения быть объектами DataMatrix. Выбором является true (значение по умолчанию) или false. Если вы устанавливаете свойство 'UniformOutput' на false, это свойство проигнорировано.

[DMObjNew1, ...] = dmarrayfun(Func, DMObj1, ...'Rows', RowsValue, ...) применяет функцию только к строкам в объекте DataMatrix, заданном RowsValue, который может быть положительным целым числом, вектором положительных целых чисел, вектор символов, задающий имя строки, массив ячеек из символьных векторов или логический вектор.

[DMObjNew1, ...] = dmarrayfun(Func, DMObj1, ...'Columns', ColumnsValue, ...) применяет функцию только к столбцам в объекте DataMatrix, заданном ColsValue, который может быть положительным целым числом, вектором положительных целых чисел, вектор символов, задающий имя столбца, массив ячеек из символьных векторов или логический вектор.

[DMObjNew1, ...] = dmarrayfun(Func, DMObj1, ...'ErrorHandler', ErrorHandlerValue, ...) задает указатель на функцию к функции, которую вызывает dmarrayfun, если вызов Func перестал работать. Функция обработки ошибок будет вызвана с этими входными параметрами:

  • Структура со следующими полями:

    • identifier — Идентификатор ошибки

    • сообщение Текст сообщения об ошибке

    • index — Линейный индекс во входной массив (массивы), в котором произошла ошибка

  • Набор входных параметров, в которых перестал работать вызов функции

Если вы не задаете ErrorHandlerValue, dmarrayfun повторно выдает ошибку от вызова до Func.

Смотрите также

| |

Представленный в R2008b