R: übergebene Funktion als Argument wurde nicht gefunden

8

Ich versuche, in R einen einfachen iterativen rew evened least squares-Algorithmus zu schreiben. Ich möchte eine Funktion als Argument für die Berechnung der Gewichte übergeben, aber leider beklagt R, dass die Funktion nicht gefunden werden kann. Irgendwelche Ideen, was ich falsch mache? Vielen Dank im Voraus!

Hier ist mein Code:

%Vor%

und ein dummes Beispiel, um das Problem zu demonstrieren

%Vor%     
linuxfever 22.08.2013, 14:23
quelle

3 Antworten

8

Das Problem kommt daher, wie lm nach den Daten sucht. Wenn Sie die Funktion ändern, scheint es zu funktionieren

%Vor%     
Dason 22.08.2013, 15:08
quelle
5

Das formula enthält die Umgebung des initialen lm Aufrufs ( .GlobalEnv , in diesem Fall), in dem wfunc nicht verfügbar war. Um dieses Problem zu umgehen, können Sie es durch die aktuelle Umgebung ersetzen.

%Vor%     
Vincent Zoonekynd 22.08.2013 15:09
quelle
-1

Dieses Problem tritt auf, weil model.frame.default in lm aufgerufen wird, was alles in der Umgebung der Formel auswertet:

%Vor%

Wie von den anderen vorgeschlagen, evaluieren Sie die Funktion außerhalb von lm .

    
eddi 22.08.2013 15:11
quelle

Tags und Links