Wie soll ich mit kategorialen Variablen mit mehreren Ebenen umgehen, wenn ich eine Rückwärtseliminierung durchführe?


12

Ich mache ein einfaches AIC-basiertes Rückwärtseliminierungsmodell, bei dem einige Variablen kategoriale Variablen mit mehreren Ebenen sind. Diese Variablen werden als Satz von Dummy-Variablen modelliert. Sollte ich bei der Rückwärtseliminierung alle Ebenen einer Variablen zusammen entfernen? Oder sollte ich jede Dummy-Variable separat behandeln? Und warum?

Als verwandte Frage behandelt Schritt in R jede Dummy-Variable separat, wenn eine Rückwärtseliminierung durchgeführt wird. Wenn ich eine ganze kategoriale Variable auf einmal entfernen wollte, kann ich das mit Schritt tun? Oder gibt es Alternativen zu Schritten, die damit umgehen können?


Ich denke, es ist schwierig, diese Frage in einem allgemeinen Kontext zu beantworten. Können Sie, wenn möglich, einige Einblicke in Ihre Daten geben? was willst du daraus schließen Mögliche Annahmen usw. Wenn Sie diese Angaben machen, können Sie Ihre Fragen möglicherweise besser beantworten.
Suncoolsu

@suncoolsu Es steht mir nicht wirklich frei, darüber zu diskutieren. Wenn es möglich ist, die Frage mit einem Entscheidungsbaum zu beantworten ("Wenn Sie X annehmen, dann tun Sie Y"), könnte dies sehr hilfreich sein.
Nerdbound

1
Sind Sie aus Gründen der Klarheit daran interessiert, das Modell als kausal zu interpretieren, oder sind Sie einfach an einer Vorhersage interessiert?
Andy W

Ja. Ich stimme Matt Parker zu. Wenn die Katzendatenspalte 5 Einträge enthält, z. B. 1,2,3,4,5, stellt das GLM-Modell 4 Spalten bereit, z. B. catCol1, catCol2, catCol3, catCol4, und wenn wir uns entscheiden, das catCol zu eliminieren Mit dem höchsten p-Wert, sagen wir catCol4, sind die restlichen drei nicht sehr sinnvoll, da die Daten immer den Wert von catCol4 besitzen können. In einer solchen Situation wäre der GLM verwirrt und würde einen Fehler
anzeigen

Antworten:


7

Ich denke, Sie müssten die gesamte kategoriale Variable entfernen. Stellen Sie sich eine logistische Regression vor, bei der Sie vorhersagen möchten, ob eine Person eine Krankheit hat oder nicht. Das Geburtsland kann einen großen Einfluss darauf haben, also nehmen Sie es in Ihr Modell auf. Wenn der spezifische amerikanische Ursprung keinen Einfluss auf AIC hätte und Sie ihn fallen ließen, wie würden Sie für einen Amerikaner berechnen ? R verwendet standardmäßig Referenzkontraste für Faktoren, daher denke ich, dass sie, wenn überhaupt, nur auf der Referenzebene (z. B. Botswana) berechnet werden. Das wird wahrscheinlich nicht gut enden ...y^

Eine bessere Option wäre, im Voraus sinnvolle Kodierungen des Geburtslandes zu sortieren - in Regionen, Kontinente usw. zusammenzufallen und herauszufinden, welche davon für Ihr Modell am besten geeignet sind.

Natürlich gibt es viele Möglichkeiten, die schrittweise Variablenauswahl zu missbrauchen. Stellen Sie also sicher, dass Sie es richtig machen. Auf dieser Seite gibt es jedoch viel darüber; Die Suche nach "schrittweise" bringt einige gute Ergebnisse. Dies ist besonders relevant , mit vielen guten Ratschlägen in den Antworten.


1
Danke für die Antwort. Ich denke, meine Sorge ist, dass in Ihrem Beispiel, wenn ein Geburtsland ein fantastischer Prädiktor für eine Krankheit ist und alle anderen Herkunftsländer schlechte Prädiktoren sind, das Rückwärtseliminierungsmodell mich auffordert, das Geburtsland sogar zu entfernen obwohl das Geburtsland als Kovariate kaum nutzlos ist. Mit anderen Worten, es könnte sinnvoll sein, eine einzige Variable für "Sind Sie Litauer?" Zu haben. obwohl das Geburtsland insgesamt nicht gut vorhersagt. Gibt es vernünftige Möglichkeiten, um mit solchen Problemen umzugehen?
Nerdbound

2
(+1) Wenn ein Land ein guter Prädiktor ist, ist die gesamte Gruppe von Ländern von Bedeutung und wird beibehalten. @Matt Parker ist richtig: Halten Sie Gruppen von Dummy-Variablen zusammen und stützen Sie die Ein- und Ausstiegskriterien auf das gemeinsame Signifikanzniveau für die gesamte Gruppe, nicht auf die Signifikanzniveaus für die einzelnen Dummies.
whuber

2
@whuber OK noch ein potenziell dummer Kommentar von mir und dann bin ich in Frieden, wenn ich verstehe, warum ich falsch liege :-P Es scheint mir, dass wenn ich AIC betrachte und ich beispielsweise 200 Länderattrappen ausschließe Als Gruppe wird sich der AIC verbessern, da das neue Modell 200 weniger Variablen enthält und sich nur insoweit verschlechtern wird, als diese Dummies gute Prädiktoren waren. Wenn nur eine der Variablen ein guter Prädiktor war, scheint es mir, dass der AIC im Netz das Modell mit 200 weniger Variablen besser aussehen lässt, aber dann werde ich diese eine Variable
verpassen

4
@nerdbound Das ist überhaupt nicht dumm. Wenn jedoch nur ein Dummy von 200 gut funktioniert, haben Sie wirklich eine andere kategoriale Variable: Es ist eine neue binäre (oder neu klassifizierte) Variable. @ Matt Parker spricht dieses Problem in seinem zweiten Absatz an. Dies scheint eine Frage der explorativen Analyse zu sein (was schrittweise Regression ist). Es ist vollkommen in Ordnung, Ihre Daten auf diese Weise zu quälen, aber nachdem der Rauch verschwunden ist, müssen Sie Ihr Modell an unabhängigen Daten testen.
whuber

1
Dies kann relevant sein, wenn es sehr viele Ebenen gibt: stats.stackexchange.com/questions/146907/…
kjetil b halvorsen

0

Was das Beispiel von Ländern betrifft, denke ich, wenn die Dummy-Variable für ein bestimmtes Land ausgewählt ist, bedeutet dies, dass dieses Land im Vergleich zu allen anderen Ländern zusammen ein Prädiktor ist (keine Notwendigkeit, eine neue binäre Variable zu erstellen). Das Problem, das ich sehr oft habe, sind Dummy-Variablen, die zum Beispiel die Schwere einer Krankheit widerspiegeln (wie -, +, ++, +++). Manchmal wird die Dummy-Variable für ++ ausgewählt, die Dummy-Variable für +++ jedoch nicht. In diesem Fall kann eine Neuklassifizierung hilfreich sein.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.