How can I create a heterogenous array using 'arrayfun' in MATLAB R2024b?
9 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
MathWorks Support Team
el 23 de Abr. de 2025
Respondida: MathWorks Support Team
el 24 de Abr. de 2025
When I use 'arrayfun' to create a heterogenous array in MATLAB R2024b, it fails with an error:
Mismatch in type of outputs
Why does this error occur, and how can I create a heterogenous array without any issues?
Respuesta aceptada
MathWorks Support Team
el 23 de Abr. de 2025
In MATLAB R2024b, 'arrayfun' cannot directly create a heterogenous array. However, you can accomplish this using 'horzcat' or an equivalent function.
First, when using 'arrayfun', specify the 'UniformOutput' name-value argument as 'false'. This will return a cell array, which can then be concatenated into a heterogenous array.
For example:
A = arrayfun(@(x) foo(x), X, 'UniformOutput', false);
A = horzcat(A{:});
The functions 'cat', 'horzcat', and 'vertcat' support creating heterogenous arrays of classes which derive from 'matlab.mixin.Heterogenous'. The documentation section A Class Hierarchy for Heterogeneous Arrays describes this in further detail.
0 comentarios
Más respuestas (0)
Ver también
Categorías
Más información sobre Matrices and Arrays en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!