Applying a Function to Every Element of a List

16 vues (au cours des 30 derniers jours)
Jamie
Jamie le 24 Fév 2013
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

Réponses (2)

Azzi Abdelmalek
Azzi Abdelmalek le 24 Fév 2013
Modifié(e) : Azzi Abdelmalek le 24 Fév 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
Andrei Bobrov le 25 Fév 2013
f2 = @(x,y)bsxfun(str2func(vectorize(func2str(f))),x,y.');
out = f2(1:4,2:4); % example

Catégories

En savoir plus sur Physical Units dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by