2016-04-16 16 views
-1

Ich möchte zwei Funktionen verbinden: In der ersten Funktion (firstf.m) möchte ich eine 'for' Schleife zu den Variablen p machen, dann berechne ich [s] für jeden Wert dann verwende ich diesen Wert in der Genauigkeit zweite Funktion, die 100 Mal Die erste Funktion istwie man zwei functons in Matlab verbindet

[s] = firstf(data,k,opts) 
p = 30; 
if isfield(opts,'p') 
p = opts.p; 
end 
for r = 20:22; 
if isfield(opts,'r') 
r = opts.r; 
. 
. 
. 
. 
[s] = k_means(U,k) 

So, wie man für die Schleife für Variablen p, r in der ersten Funktion und nehmen jeden [s] (Ausgabe der ersten Funktion wiederholen sollte) um die Genauigkeit (zweite Funktion) zu berechnen, die 100 mal wiederholt werden sollte

+0

Sie vermissen eine erhebliche Menge Ihres Codes. Bitte geben Sie sowohl die Funktionen an, die Sie bisher hatten, als auch alle relevanten Schleifen. – Suever

Antwort

0

Sie sollten beide Funktionen für jede Iteration aufrufen.

ich meine (Pseudocode)

for (iteration range) 
    call first function and store result as variable 
    call second function using last line variable 
    store both results into a vector 
end 

Ich bin nicht sicher, wenn es Ihr Problem zu beheben. Wenn Sie in Ihrem Problem expliziter sein könnten, könnte ich Ihnen helfen

+0

Sorry, ich weiß nicht gelten über Pseudocode Ich werde mein Problem in einer anderen Bedeutung schreiben, der erste Code [s] = firstf (Daten, k, opts) p = 30; r = 20; . [s] = k_Mittel (U, k) und die zweite Funktion Genauigkeit = ya (Daten, x) . . [s] = firstf (adj, x) . A = s (Linindices); Genauigkeit = Mittelwert (AUC) Ich möchte die Variablen p und r nehmen Wertebereich und in jeder Zeit berechnen s mit der ersten Funktion dann Berechnung Genauigkeit mit zweiten Funktion dann zurück zur ersten Funktion, um die nächsten Werte zu Variable p, r und Berechne s und so weiter. –

+1

Kamerad, bitte formatieren Sie ... Es ist schwer zu interpretieren, was Sie gepostet haben! –

Verwandte Themen