Multikollinearität bei logistischen Regressionsanalyse

Modelle zur Korrelations- und Regressionsanalyse

Moderator: EDi

R_Newcomer
Beiträge: 6
Registriert: Mo Mai 08, 2023 9:29 pm

Multikollinearität bei logistischen Regressionsanalyse

Beitrag von R_Newcomer »

Hallo zusammen,

ich hoffe ihr könnt mir weiterhelfen! Ich habe eine dichotome AV (Bereit in Krypto zu investieren) und mehrere UVs die ich von Likert-Skalierten Fragen habe und einen Datensatz mit 302 Ergebnissen.

Bei meiner ersten Hypothese geht es darum, ob eine steigende Inflation einen signifikanten Einfluss auf die Investitionsbereitschaft von Privatanlegern in Kryptowährungen hat.

Hierzu habe ich 5 UVs (abgefragt durch Likert Fragen) mit Werten zwischen 1 (stimme ich gar nicht zu) bis 7 (stimme ich voll zu). Diese UVs habe ich nun in dichotome Dummy Variablen transformiert (0 = Ablehnung & 1 = Zustimmung).

Bevor ich nun meine logistische Regressionsanalyse durchführe, möchte ich auf Multikollinearität prüfen (ich habe auch eine starke Vermutung das mehrere Variablen korrelieren). Vermutung ist das InflationSteigt_Dummy mit InflationHoch_Dummy korreliert. Dahinter verbirgt sich, dass die Teilnehmer eine steigende Inflation wahrnehmen bzw. wahrnehmen das die Inflation hoch ist.

Für die Prüfung der Multikollinearität habe ich die VIF-Werte wie folgt ausgerechnet:

Code: Alles auswählen

model_AVDummy_UVDummy <-
  glm(
    BereitschaftKryptoInvest_Dummy ~ Inflation_Dummy + InflationSteigt_Dummy + InflationHoch_Dummy + InflationNegEinflussGeldanlagen_Dummy + WissenInflationsschutz_Dummy,
    data = data_transformation,
    family = binomial()
  )

vif(model_AVDummy_UVDummy)
Ergebnis:
Inflation_Dummy: 1.032488
InflationSteigt_Dummy: 1.228656
InflationHoch_Dummy: 1.246150
InflationNegEinflussGeldanlagen_Dummy: 1.050165
WissenInflationsschutz_Dummy: 1.032407


Die Ergebnisse haben mich sehr stark gewundert, da laut Literatur (die ich gefunden habe) man erst von korrelierenden Variablen ab einem VIF-Wert von 2 oder sogar 10 spricht (zumindest bei linearen Regressionsanalysen - zu logistischen RA habe ich bislang keine Beispiele gefunden. Gibt es dafür einen Grund?). Ich hatte zumindest angenommen das InflationSteigt_Dummy mit InflationHoch_Dummy korreliert.
Aber bei diesen Werten korrelieren ja gar nichts miteinander?! Daher meine Frage: Habe ich das so richtig berechnet oder irgendwo einen Fehler gemacht? Ich bin wirklich skeptisch was die Ergebnisse angeht...

Ich frage mich ob ich es in R falsch berechnet habe, Interpretationsschwierigkeiten habe oder erst auf Korrelation prüfen sollte und dann die UVs transformieren sollte (wobei das habe ich schon ausprobiert - da kamen auch keine wirklich viel größeren Werte bei rum...)

Schöne Grüße und danke vorab für die Hilfe ! :)


Edit: Oder kann es evtl. daran liegen, dass sehr sehr viele Teilnehmer einfach voll zugestimmt haben bei der Inflation und dementsprechend keine großen Abweichungen bei der Variable vorhanden sind und demnach keine Korrelation vernünftig berechnet werden kann? Ich bin nämlich eben den Datensatz noch einmal durchgegangen und fast alle Teilnehmer haben bei der Variable InflationHoch eine 6 oder 7 die ich dann hinterher in der DummyVariable zu 1 transformiere.
bigben
Beiträge: 2771
Registriert: Mi Okt 12, 2016 9:09 am

Re: Multikollinearität bei logistischen Regressionsanalyse

Beitrag von bigben »

Hallo R_Newcomer,

Die Idee, Information durch dichotomisieren zu vernichten gefällt mir nicht. Ist das wirklich nötig?

Zum anderen: Ja, Variablen die fast nur den Wert 1 annehmen tragen meist nicht viel Information und Verhalten sich gerne mal komisch. Das hier sollte die Dituation beschreiben:

Code: Alles auswählen

table(daten_transformation$InflationHoch_Dummy, daten_transformation$InflationSteigt_Dummy)
cor(daten_transformation$InflationHoch_Dummy, daten_transformation$InflationSteigt_Dummy)
Magst Du fie Ergebnisse posten?

LG, Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
R_Newcomer
Beiträge: 6
Registriert: Mo Mai 08, 2023 9:29 pm

Re: Multikollinearität bei logistischen Regressionsanalyse

Beitrag von R_Newcomer »

Hallo Bernhard,

danke dir für deinen Beitrag!

Andersherum gefragt gewinne ich einen großen Mehrwert dadurch, dass ich die Ergebnisse der UVs bei 1-7 belasse? Hintergrund meiner Transformation ist ein Paper meines Profs bei dem er selber dies so gemacht hat... Wenn ich das gut begründen kann, kann ich es mit Sicherheit auch anders machen. Ich hatte mich demnach so orientiert.

Ich habe es soeben einmal ausprobiert:

Code: Alles auswählen

table(data_transformation$InflationHoch_Dummy, data_transformation$InflationSteigt_Dummy)
liefert folgende Ergebnisse:
0 1
0 5 6
1 5 286

und

Code: Alles auswählen

cor(data_transformation$InflationHoch_Dummy, data_transformation$InflationSteigt_Dummy)
liefert [1] 0.4579244.

Ich kann jetzt damit noch nicht soviel anfangen. Kannst du mir deine Gedanken dahinter erläutern? Danke dir schon einmal vielmals für dein Feedback!


Edit: Ich habe aus Interesse einmal die UVs nicht dichotomisiert sondern lediglich die NA in eine 0 transformiert (wüsste nicht ob das Sinn macht weil ich ja eigtl. nur Werte zwischen 1 bis 7 habe durch die likert Skala aber worauf man NA transformieren sollte wüsste ich auch nicht daher die 0).
Die Ergebnisse (falls von Interesse) sind folgende:

1 3 4 5 6 7
0 1 0 0 1 0 0
2 0 0 0 1 1 0
3 0 2 1 0 0 0
4 0 0 1 3 0 0
5 0 0 2 13 8 7
6 0 0 1 8 29 33
7 1 0 1 3 13 172

und

[1] 0.6452635
bigben
Beiträge: 2771
Registriert: Mi Okt 12, 2016 9:09 am

Re: Multikollinearität bei logistischen Regressionsanalyse

Beitrag von bigben »

Hallo R_Newcomer,
R_Newcomer hat geschrieben: Mo Mai 08, 2023 11:09 pmAndersherum gefragt gewinne ich einen großen Mehrwert dadurch, dass ich die Ergebnisse der UVs bei 1-7 belasse?
Das ist ein zweischneidiges Schwert. Viele Menschen würden diese Werte von 1 bis 7 als Ordinalskala ansehen und Du hast nicht genug Beobachtungen, um sie sauber als ordinalskaliert zu verarbeiten. Wenn man die Werte dennoch als metrisch betrachtet (ja, man macht einen Fehler, aber die Wirklichkeit besteht nunmal nicht aus Mathematik), dann hat man halt viel mehr Information und damit lässt sich dann auch besser rechnen. Im Wesentlichen haben Deine Teilnehmer sich ja zwischen den Werten 5, 6 und 7 entschieden. Diese Unterscheidung enthält Information die Du aus dem Fenster wirfst, wenn Du das dichotomisierst. Ist auch ein wenig respektlos gegenüber den Teilnehmern, die vielleicht lange gegrübelt haben, ob Sie das jetzt 5 oder 6 finden. Wenn einer mit einer 5 ausdrückt, dass er deutliche Restzweifel hat und ein anderer mit einer 7 ausdrückt, dass er sich da ganz sicher ist, warum solltest Du dann so tun, als ob das eine 5 und eine 7 das Gleiche wären?

Hintergrund meiner Transformation ist ein Paper meines Profs bei dem er selber dies so gemacht hat... Wenn ich das gut begründen kann, kann ich es mit Sicherheit auch anders machen. Ich hatte mich demnach so orientiert.
Rechnerisch kommst Du besser voran, wenn Du nicht dichotomisierst, aber wenn es der Weltanschauung Deines Profs entspricht, Zahlen von 1 bis 7 als streng ordinalskaliert zu betrachten, dann kannst Du natürlich Pech haben, dass der metrische Weg Dir verbaut ist. Das kann ich von hier aus nicht für Dich klären.


Code: Alles auswählen

table(data_transformation$InflationHoch_Dummy, data_transformation$InflationSteigt_Dummy)
liefert folgende Ergebnisse:
0 1
0 5 6
1 5 286
Naja, das bedeutet halt, dass die Version "beide Null" überhaupt nur 5 mal in Deinen Beobachtungen vorkommt. Es ist ja ganz toll, dass Du fast dreihundert weiße Schwäne beobachtet hast, aber wenn nur zehn schwarze Schwäne dabei waren, dann ist das der Flaschenhals Deiner statistischen Aussagekraft über Einfluss der Gefiederfarbe von Schwänen.

Code: Alles auswählen

cor(data_transformation$InflationHoch_Dummy, data_transformation$InflationSteigt_Dummy)
liefert [1] 0.4579244.
Du hattest Sorgen geäußert, dass Deine Prädiktoren zu stark miteinander korreliert sein könnten. Nun, sie sind nur mit r = 0,45 korreliert. Sie sind also keineswegs gleich, was die Kontingenztafel (table) oben ja auch gezeigt hat: Wenn ein Wert 0 ist, dann ist die Chance, dass der andere auch Null ist, nur etwa 50%.

Multikollinearität und VIF sind eher nicht das Zentrum Deiner Probleme, sondern dass Du nur so wenige Beobachtungen mit 0 hast, dass es schwer wird, einen Effekt der 0 vom Zufall zu unterscheiden.
Ich habe aus Interesse einmal die UVs nicht dichotomisiert sondern lediglich die NA in eine 0 transformiert (wüsste nicht ob das Sinn macht weil ich ja eigtl. nur Werte zwischen 1 bis 7 habe durch die likert Skala aber worauf man NA transformieren sollte wüsste ich auch nicht daher die 0).
Auf Null setzen macht für mich gar keinen Sinn. Keine Antwort geben ist ja nicht weniger Zustimmung als "stimme ich gar nicht zu". Da es nur zwei Beobachtungen sind, in denen das vorkommt, kannst Du Dich entscheiden, diese beiden entweder von der weiteren Bearbeitung auszuschließen oder sie durch Imputation zu füllen. Auch da könnten Vorlieben Deines Professors Dir den richtigen Weg weisen. Ich würde wahrscheinlich eher die beiden Beobachtungen löschen (complete-cases auswerten) als lange herumzuargumentieren, warum ich mich für diese und nicht für eine anderen Imputationsmethode entschieden habe. Wenn Du statistisches Können und Engagement beweisen willst, käme sonst noch Multiple Imputation infrage. Wie gesagt, Vorlieben von Professoren.

Wenn die Korrelation ohne Dichotomisierung zunimmt kannst Du ja mal prüfen, ob das VIF auch zunimmt, aber so ein tolles Maß ist das VIF auch wieder nicht.

HTH,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
R_Newcomer
Beiträge: 6
Registriert: Mo Mai 08, 2023 9:29 pm

Re: Multikollinearität bei logistischen Regressionsanalyse

Beitrag von R_Newcomer »

Hallo Bernhard,

ich habe mich nun noch einmal sortiert und ich denke ich verzichte erst einmal auf die Dichotomisierung der UVs. Ebenfalls verzichten werde ich auf die NA = 0 Transformation, diese werde ich wie du schon vorgeschlagen hast einfach nicht mit in die Prüfung einbeziehen.

Ich habe nun mehrere Quellen durchgelesen und bemerke das man sich wohl in der Wissenschaft nicht "einig" ist ob die Likert skalierten Fragen ordinal oder metrisch sind... Wenn ich das hier dann richtig verstanden habe, habe ich bessere Möglichkeiten wenn ich die Annahme treffe dass die UVs metrisch sind oder?

Wenn ich dies so jetzt mache (also keine Transformation vorab) bekomme ich folgende Werte:

Code: Alles auswählen

cor(
  data_transform$InflationIstHoch, data_transform$InflationSteigt, use = "complete.obs", method = "pearson")
-> 0.605 und signifikant mit p <2.2e-16

Wenn ich die Annahme treffe das es Ordinal ist dann:

Code: Alles auswählen

cor(data_transform$InflationIstHoch, data_transform$InflationSteigt, use = "complete.obs", method = "spearman")
-> 0.617 und signifikant mit p < 2.2e-16


Nur der Vollständigkeit halber damit man den Unterschied noch einmal sieht hier mit den transformierten Variablen in (0 = Ablehnung & 1 = Zustimmung) jedoch ohne NA = Ablehnung sondern NAs ignoriert:

Metrisch Pearson:

Code: Alles auswählen

cor(data_transformation$InflationHoch_Dummy, data_transformation$InflationSteigt_Dummy, use = "complete.obs", method = "pearson")
-> 0.380 mit signifikant p < 2.795e-12

Ordinal Spearman:

Code: Alles auswählen

cor(data_transformation$InflationHoch_Dummy, data_transformation$InflationSteigt_Dummy, use = "complete.obs", method = "spearman")
-> 0.380 und signifikant mit p < 2.795e-12


Hier wird eigentlich noch einmal deutlich das durch die Dichotomisierung die Korrelation abnimmt. Jedoch habe ich und du hast es ja auch schon gesagt mehr Möglichkeiten und ein genaueres Ergebnis wenn ich auf die Dichotomisierung verzichte.

Wenn ich das so alles richtig verstehe und Pearson nehme und mit 0.617 habe ich ja schon eine hohe Korrelation (=0 wäre ja absolut nicht korrelierend und 1 das Maximum). Wie gehe ich hiermit um? Lasse ich eine der beiden Variablen außen vor? Verschmelze ich diese in 'InflationSteigtBzwIstHoch'?

Und noch eine Verständnisfrage, wenn die Korrelation nicht signifikant wäre: Was würde ich dann machen? Diese ausrechnen und dadurch das sie nicht signifikant ist 'ignorieren' und mit beiden UVs weiter in die logistische Regressionsberechnung reingehen?

Schöne Grüße aus NRW :)
bigben
Beiträge: 2771
Registriert: Mi Okt 12, 2016 9:09 am

Re: Multikollinearität bei logistischen Regressionsanalyse

Beitrag von bigben »

R_Newcomer hat geschrieben: Di Mai 09, 2023 5:17 pmIch habe nun mehrere Quellen durchgelesen und bemerke das man sich wohl in der Wissenschaft nicht "einig" ist ob die Likert skalierten Fragen ordinal oder metrisch sind.
Das kann ich so nicht bestätigen. Ich habe eher den Eindruck, dass Lehrmaterialien Studierende mit Fragen hinterlassen, was der Begriff "Likert-Skala" genau bedeutet. Ich habe mich dazu an anderer Stelle mal ausgelassen: http://www.statistik-forum.de/nutzung-d ... t9192.html
Wenn ich das hier dann richtig verstanden habe, habe ich bessere Möglichkeiten wenn ich die Annahme treffe dass die UVs metrisch sind oder?
Ja.
Wenn ich das so alles richtig verstehe und Pearson nehme und mit 0.617 habe ich ja schon eine hohe Korrelation (=0 wäre ja absolut nicht korrelierend und 1 das Maximum). Wie gehe ich hiermit um? Lasse ich eine der beiden Variablen außen vor? Verschmelze ich diese in 'InflationSteigtBzwIstHoch'?
Das kommt darauf an, worum es Dir in Deiner Arbeit genau geht. Die Multikollinearität hat keinerlei Einfluss darauf, ob das Gesamtmodell signifikant wird aber sie hat Einfluss darauf, ob einzelne Prädiktoren signifikant werden. Ob es für Deine Fragestellung angemessener ist, eine (welche?) von beiden wegzulassen oder beide in geeigneter Weise zu einer zusammenzufassen, das musst Du auf Sachebene beantworten. Wenn es nicht um Signifikanz gehen sollte sondern nur um ein Vorhersagemodell, dann könntest Du beiden einen ähnlichen Koeffizienten zuweisen, indem Du eine Ridge-Regression rechnest oder wenn Du ein Vorhersagemodell ohne Signifikanztestung haben wolltest bei dem möglichst wenig Prädiktoren vorkommen könntest Du eine LASSO-Regression rechnen.
Und noch eine Verständnisfrage, wenn die Korrelation nicht signifikant wäre: Was würde ich dann machen?


Es geht um eine Fallzahl die mit zunehmender Kollinearität größer werden muss, wenn die Standardfehler der Prädiktoren nicht ausufern sollen. Signifikanz der Kollinearität spielt eigentlich keine Rolle.

LG,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
R_Newcomer
Beiträge: 6
Registriert: Mo Mai 08, 2023 9:29 pm

Re: Multikollinearität bei logistischen Regressionsanalyse

Beitrag von R_Newcomer »

Hallo Bernhard,

wahnsinn was man hier alles darüber schreiben kann! Aber ist auch echt interessant muss ich sagen ! :)
Das kann ich so nicht bestätigen. Ich habe eher den Eindruck, dass Lehrmaterialien Studierende mit Fragen hinterlassen, was der Begriff "Likert-Skala" genau bedeutet. Ich habe mich dazu an anderer Stelle mal ausgelassen: http://www.statistik-forum.de/nutzung-d ... t9192.html
Danke dir für das Teilen! Das werde ich mir als Abendlektüre heute genehmigen.
Das kommt darauf an, worum es Dir in Deiner Arbeit genau geht. Die Multikollinearität hat keinerlei Einfluss darauf, ob das Gesamtmodell signifikant wird aber sie hat Einfluss darauf, ob einzelne Prädiktoren signifikant werden. Ob es für Deine Fragestellung angemessener ist, eine (welche?) von beiden wegzulassen oder beide in geeigneter Weise zu einer zusammenzufassen, das musst Du auf Sachebene beantworten. Wenn es nicht um Signifikanz gehen sollte sondern nur um ein Vorhersagemodell, dann könntest Du beiden einen ähnlichen Koeffizienten zuweisen, indem Du eine Ridge-Regression rechnest oder wenn Du ein Vorhersagemodell ohne Signifikanztestung haben wolltest bei dem möglichst wenig Prädiktoren vorkommen könntest Du eine LASSO-Regression rechnen.
Es geht um eine Fallzahl die mit zunehmender Kollinearität größer werden muss, wenn die Standardfehler der Prädiktoren nicht ausufern sollen. Signifikanz der Kollinearität spielt eigentlich keine Rolle.
Ich glaube hier kann ich dir nur bedingt folgen. Die Multikollinearität hat nur Einfluss auf meine UV und nicht auf die spätere Regressionsanalyse. Das verstehe ich. Jedoch frage ich mich welche Informationen ich aus der Signifikanz bei der Berechnung der Korrelationskoeffizienten bekomme. Die Signifikanz sagt mir ja wie wahrscheinlich das Ergebnis durch reinen Zufall entsteht oder ein Effekt tatsächlich besteht.

Das bedeutet (umgangssprachlich) wenn ich signifikante Korrelationen zweier Variablen habe, besteht der Effekt tatsächlich. Wenn ich jedoch einen p-Wert von bspw. .50 habe und demnach keine signifikanz ist die Wahrscheinlichkeit groß, dass die Korrelation hier nur durch Zufall entstanden ist.

So hätte ich dann interpretiert das ich mir nur über signifikante Korrelationen (Koeffizient von 0.617 ist das eine hohe Korrelation oder nicht?) Gedanken machen muss ob ich diese in einer Form abändere oder aus dem Modell rausnehme...

Mein Ziel ist ja die logistische Regressionsanalyse, also ich will ja die Wahrscheinlichkeit wissen das meine AV den Wert von 1 annimmt ('Ich bin bereit in Kryptowährungen zu investieren') anhand meiner UV. Hierzu lautet meine erste Hypothese: H1: Die wahrgenommene Inflation hat keinen signifikanten Einfluss auf die Investitionsbereitschaft von Privatanlegern in Kryptowährungen.
Wie ich hier die UV "Ich nehme wahr, dass die Inflation ansteigt" und "Ich nehme wahr, dass die Inflation hoch ist" zusammenfließen lassen sollte auf Sachebene bin ich mir noch im unklaren. Da muss ich sonst noch einmal überlegen oder ob ich da eine weglasse...

Ich habe tatsächlich noch zwei Fragen und ich glaube wenn ich hierauf die Antwort habe, bin ich schon ein Riesen Stück weiter bzw. kann die Aufbereitung und logistische Regressionsanalyse durchziehen. Ich stelle sie einfach mal in der Hoffnung du bist geduldig und beantwortest diese mir zusätzlich auch noch :D

1: Sollte ich die Multikollinearität für alle UVs zusammen prüfen? Zur Erklärung, ich habe mir gedacht ich beantworte sozusagen step by step jede Hypothese einzeln damit ich mich da besser dran langhangeln kann. Demnach würde ich auch die Korrelation nur für die UVs betreffend zu H1 prüfen und wenn ich mit H1 fertig bin dann nur die UVs für H2 etc. aber es kann ja sein das die UVs zu den verschiedenen Hypothesen miteinander korrelieren. Demnach müsste ich alle zusammen prüfen oder?

2: Zu Anfang war ich ambitioniert eine richtig ausführliche Datenaufbereitung zu machen, mit allem was dazugehört. Mittlerweile habe ich das Gefühl (und manchmal ist ja bekanntlich weniger auch mehr ;)) das ich fast gar nichts aufbereiten muss / sollte. Also im Endeffekt habe ich nicht eine einzige Variable in irgendeiner Form verändert. Gibt es einen Leitfaden / Orientierung was man bei der Datenaufbereitung alles machen sollte? Und noch viel wichtiger welche Voraussetzungen alle gegeben sein müssen für die logistische Regressionsanalyse? Die bisherigen Dinge die ich hierzu gefunden habe, sind alle gefühlt automatisch bei mir gegeben...

Herzliche Grüße!
bigben
Beiträge: 2771
Registriert: Mi Okt 12, 2016 9:09 am

Re: Multikollinearität bei logistischen Regressionsanalyse

Beitrag von bigben »

R_Newcomer hat geschrieben: Di Mai 09, 2023 8:55 pmAber ist auch echt interessant muss ich sagen ! :)
Drum haben wir dafür hier ja ein Forum.
Die Multikollinearität hat nur Einfluss auf meine UV und nicht auf die spätere Regressionsanalyse. Das verstehe ich.
Das verstehe ich dafür jetzt nicht.
Die Signifikanz sagt mir ja wie wahrscheinlich das Ergebnis durch reinen Zufall entsteht oder ein Effekt tatsächlich besteht.

Nein, das sagt sie nicht. Es kann schon sein, dass Du das richtig meinst, aber ich kann gerade nicht unterscheiden, ob Du das richtig meinst oder nicht richtig meinst.
Das bedeutet (umgangssprachlich) wenn ich signifikante Korrelationen zweier Variablen habe, besteht der Effekt tatsächlich.
Ich bin mir nicht sicher, was genau Du hier mit "Effekt" meinst. Wenn zwei Prädiktoren hoch miteinander korrelieren, dann wird die Regression Probleme haben, zwischen ihnen zu unterscheiden. Dafür ist es erstmal ganz nachrangig, ob die Korrleation signifikant ist, oder nicht.
Wenn ich jedoch einen p-Wert von bspw. .50 habe und demnach keine signifikanz ist die Wahrscheinlichkeit groß, dass die Korrelation hier nur durch Zufall entstanden ist.
Gegenbeispiel:

Code: Alles auswählen

cor.test(c(1, 2, 3), c(1, 2, 3), method = "spearman")
Sehr hohe Korrelation aber nicht signifikant. Glaubst Du, dass diese Korrelation nur durch Zufall entstanden ist, oder dass ich diese Zahlen bewusst gewählt habe?
So hätte ich dann interpretiert das ich mir nur über signifikante Korrelationen (Koeffizient von 0.617 ist das eine hohe Korrelation oder nicht?) Gedanken machen muss ob ich diese in einer Form abändere oder aus dem Modell rausnehme...
Nochmal, hohe Koeffizienten (was das ist hängt von der Fallzahl ab) sind ein Problem. Entscheidend ist die Höhe, nicht die Signifikanz. Nimm mein Beispiel von oben: Wenn beide Variablen die gleichen Werte haben kann die Regression offensichtlich nicht zwischen ihnen unterscheiden (kann ich ja auch nicht), dass deren Stichprobenumfang unzureichend für den Signifikanztest ist hat nichts damit zu tun, dass man die beiden Variablen nicht unterscheiden kann.
Mein Ziel ist ja die logistische Regressionsanalyse, also ich will ja die Wahrscheinlichkeit wissen das meine AV den Wert von 1 annimmt ('Ich bin bereit in Kryptowährungen zu investieren') anhand meiner UV.
Wenn Du die Wahrscheinlichkeit wissen willst, brauchst Du ein Modell, das gute Vorhersagen machen kann. Das ist etwas anderes als ein Modell, dass Zusammenhänge klären und also Signifikanztests dienen soll.

Hierzu lautet meine erste Hypothese: H1: Die wahrgenommene Inflation hat keinen signifikanten Einfluss auf die Investitionsbereitschaft von Privatanlegern in Kryptowährungen.
Testhypothesen enthalten nicht das Wort Signifikanz. Und ob etwas prädiktiv für etwas anderes ist ist immer vom Kontext abhängig. Vielleicht besteht ein Zusammenhang zwischen Investitionsbereitschaft und Inflationswahrnehmung nur dann, wenn man für x und y korrigiert oder eben auch nicht korrigiert. Die Nullhypothese ist nur im Kontext des Modells vollständig.

Wie ich hier die UV "Ich nehme wahr, dass die Inflation ansteigt" und "Ich nehme wahr, dass die Inflation hoch ist" zusammenfließen lassen sollte auf Sachebene bin ich mir noch im unklaren.
Die Sachebene ist aber die entscheidende. Vielleicht hast Du ja genug Beobachtungen, um beides zu unterscheiden. Vielleicht ist es aber auch wirklich das gleiche, vielleicht halten Leute die Inflation dann für hoch, wenn sie oft genug gehört haben, dass die Inflation steigt?
Da muss ich sonst noch einmal überlegen oder ob ich da eine weglasse...
Oder ob Du beide in einem Wert zusammenfasst als "Inflationswahrnehmung". Entweder einfach als Summe von beiden oder aufwändig und sauber durch eine Hauptkomponentenanalyse oder eine Faktorenanalyse.
1: Sollte ich die Multikollinearität für alle UVs zusammen prüfen? Zur Erklärung, ich habe mir gedacht ich beantworte sozusagen step by step jede Hypothese einzeln damit ich mich da besser dran langhangeln kann. Demnach würde ich auch die Korrelation nur für die UVs betreffend zu H1 prüfen und wenn ich mit H1 fertig bin dann nur die UVs für H2 etc. aber es kann ja sein das die UVs zu den verschiedenen Hypothesen miteinander korrelieren. Demnach müsste ich alle zusammen prüfen oder?
Multikollinearität ist ein Problem eines Modells, nicht einer Hypothese. Wenn Du für alle Hypothesen die gleichen Prädiktoren einsetzt, dann musst Du für diese Prädiktoren Multikollinearität nur einmal prüfen. Wenn Du verschiedene Prädiktoren brauchst, musst Du für jede Kombination gesondert prüfen.
Die bisherigen Dinge die ich hierzu gefunden habe, sind alle gefühlt automatisch bei mir gegeben...
Glückwunsch, dann ist ja alles gut.

Ich wünsche Dir viel Erfolg damit.

LG,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
R_Newcomer
Beiträge: 6
Registriert: Mo Mai 08, 2023 9:29 pm

Re: Multikollinearität bei logistischen Regressionsanalyse

Beitrag von R_Newcomer »

Guten Abend Bernhard,
Nochmal, hohe Koeffizienten (was das ist hängt von der Fallzahl ab) sind ein Problem. Entscheidend ist die Höhe, nicht die Signifikanz. Nimm mein Beispiel von oben: Wenn beide Variablen die gleichen Werte haben kann die Regression offensichtlich nicht zwischen ihnen unterscheiden (kann ich ja auch nicht), dass deren Stichprobenumfang unzureichend für den Signifikanztest ist hat nichts damit zu tun, dass man die beiden Variablen nicht unterscheiden kann.
Ich glaube so meine ich es auch. Ich versuche es noch einmal: meine Anzahl an Beobachtungen (Umfrageteilnehmer) ist nicht hoch genug um die Korrelation zwischen den Variablen A und B signifikant (d.h. einen Zufall der Ausprägungen hier auszuschließen) nachzuweisen. Der Koeffizient zwischen A und B ist bspw. 0.8 und demnach sehr hoch, sodass die Regression oder andere Analysemethoden den Unterschied beider Variablen (wenn überhaupt) nur schwer erkennen können. Ich glaube so passt meine Formulierung und Meinung besser und deckt sich mit deiner?
Wenn Du die Wahrscheinlichkeit wissen willst, brauchst Du ein Modell, das gute Vorhersagen machen kann. Das ist etwas anderes als ein Modell, dass Zusammenhänge klären und also Signifikanztests dienen soll.
Damit meinst du also ich sollte nicht so viel auf Signifikanz und Multikorrealität achten oder? ;)
Vielleicht besteht ein Zusammenhang zwischen Investitionsbereitschaft und Inflationswahrnehmung nur dann, wenn man für x und y korrigiert oder eben auch nicht korrigiert. Die Nullhypothese ist nur im Kontext des Modells vollständig.
Damit spielst du auf die Faktorenanalyse oder Hauptkomponentenanalyse an oder? Ansonsten weiß ich nicht was du mit x und y korrigiert meinst.
Oder ob Du beide in einem Wert zusammenfasst als "Inflationswahrnehmung". Entweder einfach als Summe von beiden oder aufwändig und sauber durch eine Hauptkomponentenanalyse oder eine Faktorenanalyse.
Ein weiteres Thema für mich welches ich mir wohl morgen anschauen werde. Klingt für mich erstmal sehr schön, strukturiert aus zwei Variablen eine zu machen.
Multikollinearität ist ein Problem eines Modells, nicht einer Hypothese. Wenn Du für alle Hypothesen die gleichen Prädiktoren einsetzt, dann musst Du für diese Prädiktoren Multikollinearität nur einmal prüfen. Wenn Du verschiedene Prädiktoren brauchst, musst Du für jede Kombination gesondert prüfen.
Das habe ich mir gedacht, danke :)!

Nur um noch einmal sicherzustellen (du scheinst viel Ahnung zu haben), bislang habe ich folgende Voraussetzungen in der Literatur für die log. Regression gefunden die erfüllt sein müssen (stimmen die / gibt es noch weitere?):
1. AV ist dichotom -> Check
2. UV ist nominal oder mind. intervallskaliert -> Check
3. Unabhängigkeit, keine wiederholten Messungen -> einmalige Umfrage daher Check
4. gewisse Stichprobengröße muss vorhanden sein -> >300 Teilnehmer und dies mit dem Betreuer abgestimmt sollte für meinen Umfang ausreichen - Check
5. keine Ausreißer -> hier müsste ich wahrscheinlich nochmal die likert Fragen drauf prüfen oder? Ich bin zuerst davon ausgegangen, dass diese keine Ausreißer haben können aber wenn ich jetzt noch einmal drüber nachdenke... wieso eigtl. nicht
6. Linearität zwischen UV und Logie-Transformation der AV -> dies muss ich noch prüfen.
7. keine Multikollinearität -> hier werde ich mir wohl die Faktorenanalyse / Hauptkomponentenanalyse anschauen um die Korrelation beider Variablen entgegenzuwirken.

Herzliche Grüße :)
R_Newcomer
Beiträge: 6
Registriert: Mo Mai 08, 2023 9:29 pm

Re: Multikollinearität bei logistischen Regressionsanalyse

Beitrag von R_Newcomer »

Hallo zusammen,

jetzt muss ich mich doch hier noch einmal melden. Ich bin ein gutes Stück weitergekommen und vieles hat sich geklärt.

Aktuell bin ich an der Überlegung wie ich mit Missing Values umgehen soll. Ich habe keinen Datenverlust o. ä. sondern jedem Teilnehmer die Möglichkeit bei jeder Frage gegeben auch 'keine Antwort' anzukreuzen. Mein Professor hat es mal in seiner Arbeit so gemacht diese konservativ als Ablehnung zu nehmen (wobei das auch nur bei Dichotomen Variablen - bei Alter etc. keine Ahnung). Er sagte ich kann quasi umgehen mit diesen Dingen wie ich möchte, ihm kommt es darauf an das es gut begründet ist vom Vorgehen her und demnach auch belegt mit Quellen.

Jetzt bin ich in der Literatur über folgende 3 Formen gestolpert:
- Missing Completely at Random
- Missing at Random
- Missing not at Random

Hier https://www.uni-trier.de/fileadmin/urt/doku/bfw/bfw.pdf hat die Uni Trier mal erklärt wie man SPSS damit umgehen sollte / kann um es herauszufinden. Da ich aber kein SPSS habe bzw. nicht in der Variante mit dem AddOn Missing Values kann ich dies nicht nachstellen.

Ich bin nun am überlegen wie ich diese Prüfungen mit R nachstellen kann? Die höchste Zahl von 'Keine Antwort' liegt bei 7,9 Prozent. Also meistens habe ich Antworten bekommen aber schematisch sollte ich ja schon korrekt vorgehen. Leicht wäre es natürlich jetzt einfach zu sagen die 'Keine Antwort' Angaben auszuschließen und zu sagen sie würden das Ergebnis verzerren aber es gibt da ja doch verschiedene Arten zu prüfen wieso jemand 'Keine Antwort' ausgewählt hat und mit diesen Erkenntnissen dann Rückschlüsse zu ziehen (Datensatz fällt weg, Imputation etc).

Vielleicht weiß hier ja jemand wie man hier schematisch vorgeht? Am liebsten direkt mit einer R-Syntax oder den Befehlen damit ich das nachschauen kann :)

Schöne Grüße und ein hoffentlich langes Wochenende für alle :-)
Antworten