mapcell

MAPCELL like cellfun, but fun can be anything feval'able.

You are now following this Submission

function [D] = mapcell( fun, C )

Overview:

for each element of C, fun is evaluated with that element as
the argument. Optional arguments passed to mapcell are also
passed along to fun. The code is shorter than the english to
describe it:

D = cell(size(C));
for k=1:prod(size(C))
D{k} = feval( fun, C{k}, varargin{:} );
end

If all of the outputs D are exactly 1-by-1, D is converted to
from a cell array to an array.
inputs:

fun: some feval'able form, like a function handle or an inline
object, or the name of function. note that all of the
cellfun strings work identically: 'isreal', 'isempty',
'islogical', 'length', 'ndims', 'prodofsize', 'size',
'isclass'

C: the cell array in consideration
outputs:

D: a cell or double array the same size as C.

S: if D is a cell array, S is prod(size(D))-by-
max(mapcell(@ndims,D)) where the rows are the size of the
corresponding element in D. if D is a regular array S is
ones(size(D)).

Cite As

D. Simms (2026). mapcell (https://se.mathworks.com/matlabcentral/fileexchange/3776-mapcell), MATLAB Central File Exchange. Retrieved .

General Information

MATLAB Release Compatibility

  • Compatible with any release

Platform Compatibility

  • Windows
  • macOS
  • Linux
Version Published Release Notes Action
1.0.0.0