Применение функции к каждой ячейке в массиве ячеек
применяет функцию A = cellfun(func,C)func к содержимому каждой ячейки массива ячеек C, по одной клетке за раз. cellfun затем объединяет выходные сигналы func в выходной массив A, так что для i-й элемент C, A(i) = func(C{i}). Входной аргумент func является дескриптором функции, который принимает один входной аргумент и возвращает скаляр. Выходные данные func может иметь любой тип данных, если объекты этого типа могут быть конкатенированы. Множество A и массив ячеек C имеют одинаковый размер.
Невозможно указать порядок, в котором cellfun вычисляет элементы A или полагаться на их выполнение в каком-либо конкретном порядке.
применяется A = cellfun(___,Name,Value)func с дополнительными опциями, указанными одним или несколькими Name,Value аргументы пары. Например, чтобы вернуть выходные значения в массиве ячеек, укажите 'UniformOutput',false. Вы можете вернуться A как массив ячеек, когда func возвращает значения, которые не могут быть объединены в массив. Вы можете использовать Name,Value объединение аргументов с входными аргументами любого из предыдущих синтаксисов.
[A1,...,Am] = cellfun(___) возвращает несколько выходных массивов A1,...,Am когда func прибыль m выходные значения. func может возвращать выходные аргументы, которые имеют различные типы данных, но тип данных каждого вывода должен быть одинаковым каждый раз func вызывается. Этот синтаксис можно использовать с любым из входных аргументов предыдущих синтаксисов.
Число выходных аргументов из func не обязательно должно совпадать с числом входных аргументов, указанных C1,...,Cn.
arrayfun | cell2mat | spfun | splitapply | structfun