MLE Fehler in R: Initialwert in 'vmmin' ist nicht endlich

8

Angenommen, ich habe 2 data.frame -Objekte:

%Vor%

Ich möchte MLE machen. Mit df1 ist alles in Ordnung:

%Vor%

Aber wenn ich dieselbe Aufgabe mit df2 machen würde, würde ich einen Fehler erhalten:

%Vor%

Wie kann ich es überwinden?

    
BiXiC 24.06.2014, 10:03
quelle

2 Antworten

4

Der Wert von R wird an einem bestimmten Punkt Null; es führt zu einem nicht endlichen Wert der zu minimierenden Funktion und gibt einen Fehler zurück.

Mit dem Argument log=TRUE wird dieses Problem besser behandelt, siehe Funktion LL3 unten. Im Folgenden werden einige Warnungen angezeigt, aber es wird ein Ergebnis zurückgegeben, dessen Parameterschätzer nahe an den wahren Parametern liegen.

%Vor%     
javlacalle 24.06.2014, 10:32
quelle
4

Ich hatte das gleiche Problem, wenn ich eine Log-Likelihood-Funktion minimiere. Nach einigem Debugging stellte ich fest, dass das Problem in meinen Startwerten lag. Sie verursachten, dass eine bestimmte Matrix eine Determinante = 0 hatte, was einen Fehler verursachte, wenn ein Protokoll davon gemacht wurde. Daher konnte es keinen "endlichen" Wert finden, aber das lag daran, dass die Funktion einen Fehler zu optim zurückgegeben hat.

Bottomline: Überlegen Sie, ob Ihre Funktion keinen Fehler zurückgibt, wenn Sie sie mit den Startwerten ausführen.

PS .: Marius Hoert hat vollkommen Recht. Unterdrücke nie Warnungen.

    
Douglas K 07.09.2015 20:12
quelle

Tags und Links