Примените функцию к каждому полю скалярной структуры
A = structfun(func,S)
A = structfun(func,S,Name,Value)
[A1,...,Am] = structfun(___)
применяет функциональный 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