Applying a Function to Every Element of a List
Show older comments
I have a function taking 2 input values, say f(x,y) and a list, say L=[L1 L2 ... Ln]
How can I get the list L'=[f(L1,a) f(L2,a) ... f(L3,a)] where a is just a constant?
Thanks
Answers (2)
Azzi Abdelmalek
on 24 Feb 2013
Edited: Azzi Abdelmalek
on 24 Feb 2013
arrayfun(@(x) f(x,a),L,'un',0)
read
doc arrayfun
doc cellfun
Example
L=randi(10,1,10)
out=arrayfun(@(x) max(x,5),L)
Andrei Bobrov
on 25 Feb 2013
f2 = @(x,y)bsxfun(str2func(vectorize(func2str(f))),x,y.');
out = f2(1:4,2:4); % example
Categories
Find more on Physical Units in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!