Ich versuche, ein binäres Ergebnis unter Verwendung von 50 kontinuierlichen erklärenden Variablen vorherzusagen (der Bereich der meisten Variablen ist bis ). Mein Datensatz enthält fast 24.000 Zeilen. Wenn ich in R renne, bekomme ich:glm
Warning messages:
1: glm.fit: algorithm did not converge
2: glm.fit: fitted probabilities numerically 0 or 1 occurred
Ich habe die anderen Antworten gelesen, die darauf hindeuten, dass möglicherweise eine perfekte Trennung stattfindet, bin jedoch zuversichtlich, dass dies bei meinen Daten nicht der Fall ist (obwohl eine quasi vollständige Trennung vorliegen könnte; wie kann ich testen, ob dies der Fall ist). . Wenn ich einige Variablen entferne, wird der Fehler "Nicht konvergieren" möglicherweise nicht mehr angezeigt. Aber das passiert nicht immer.
Ich habe versucht, die gleichen Variablen in einer bayesglm
Funktion zu verwenden und habe die gleichen Fehler erhalten.
Welche Schritte würden Sie unternehmen, um herauszufinden, was genau hier vor sich geht? Wie können Sie herausfinden, welche Variablen die Probleme verursachen?
bayesglm
versucht, die Trennung durch Hinzufügen eines Prior zu vermeiden, aber bei 24.000 Zeilen wird der Prior wahrscheinlich von der Wahrscheinlichkeit überfordert. Versuchen Sie es mit einem Schrumpfen prior.scale
, möglicherweise um eine große Menge. Ziehen Sie auch in Betracht, die Freiheitsgrade des Prior zu erhöhen, um große Werte im Zusammenhang mit der Trennung auszuschließen.
bayesglm
Zeitung wird argumentiert, dass die Trennung "ein häufiges Problem ist, selbst wenn die Stichprobengröße groß und die Anzahl der Prädiktoren klein ist"