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