Kartenfunktion in MATLAB?

Ich bin ein wenig überrascht, dass MATLAB nicht über eine Map-Funktion, so dass ich gehackt einen selber zusammen, da es etwas ich kann nicht ohne Leben. Gibt es eine bessere version gibt? Gibt es etwas-standard-funktionale Programmierung-Bibliothek für MATLAB gibt, die mir fehlt?

function results = map(f,list)
% why doesn't MATLAB have a Map function?
results = zeros(1,length(list));
for k = 1:length(list)
    results(1,k) = f(list(k));
end

end

Verwendung wäre z.B.

map( @(x)x^2,1:10)
Kommentar zu dem Problem - Öffnen
Lektion #1 gehen aus anderen Sprachen Matlab: keine for-Schleifen, Sie sind ein paar Größenordnungen langsamer als ein Vektorgrafik-Lösung. Kommentarautor: CookieOfFortune
Was ist Rekursion? Kommentarautor: Dario
Mit der Einführung der JIT -, for-Schleifen nehmen Sie nicht die Strafe, die Sie einst Taten. Kommentarautor: MatlabDoug
@CookieOfFortune ich denke, das ist nicht mehr wahr... Kommentarautor: Ander Biguri
@AnderBiguri ich glaube, Sie haben Hinzugefügt einige Verbesserungen, aber es ist noch viel langsamer. Kommentarautor: CookieOfFortune

InformationsquelleAutor der Frage | 2009-06-11

Schreibe einen Kommentar