Примените функцию к каждой ячейке в массиве ячеек
A = cellfun(func,C)A = cellfun(func,C1,...,Cn)A = cellfun(___,Name,Value)[A1,...,Am] = cellfun(___) применяет функциональный A = cellfun(func,C)func к содержимому каждой ячейки массива ячеек C, одна ячейка за один раз. cellfun затем конкатенирует выходные параметры от func в выходной массив A, так, чтобы для i th элемент 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