Alternative zur Stepwise Regression bei Panel-Daten

Modelle zur Korrelations- und Regressionsanalyse

Moderator: EDi

Antworten
Sentinel66
Beiträge: 16
Registriert: Mo Aug 06, 2018 12:33 pm

Alternative zur Stepwise Regression bei Panel-Daten

Beitrag von Sentinel66 »

Hallo zusammen,

ich möchte die Einflussfaktoren auf die Anwesenheitsquote von Hauptversammlungen untersuchen.
Hierzu habe ich verschiedene Variablen rausgesucht (ca. 30 Stück). Bei 130 Unternehmen und t=5 sind dieses jedoch zu viele um signifikante Ergebnisse zu erhalten. Zudem handelt es sich hier teilweise um Abwandlungen "derselben" Variable z.B. Dividende pro Aktie, Dividendenrendite, Dividendenwachstum, Dividendenkürzung ja/nein.

Meine Frage ist, wie ich in r eine Stepwise Regression bei Paneldaten durchführen kann. Der Befehl stepAIC() führt bei mir nämlich zu einer Fehlermeldung.
- Gibt es Besonderheiten beim Aufbau? Bisher ist der Aufbau meines Panels nach Spalten:
Firmenname, WKN(keine erkl. Var), Datum HV, HV-Praesenz, t, erklärende Variablen.


Auf Grund von Dummy-Variablen komme ich zu dem Schluss, dass ein FEM am sinnvollsten wäre (Hausmannspezifikationstest wird trotzdem durchgeführt).

Mit freundlichen Grüßen
Marco
mara
Beiträge: 4
Registriert: Mo Feb 25, 2019 10:31 am

Re: Alternative zur Stepwise Regression bei Panel-Daten

Beitrag von mara »

Hallo Marco!

Sieht dein Problem etwa so aus, wie das des folgenden Fragestellers? Oder welche Fehlermeldung bekommst du?
https://stackoverflow.com/questions/386 ... ion-models

Generell ist eine stepwise regression mit einigen Problemen verbunden, siehe z.B. https://www.stata.com/support/faqs/stat ... -problems/ Wenn du es dennoch versuchen möchtest, kann dir vielleicht das "My.stepwise" package helfen: https://cran.r-project.org/web/packages ... epwise.pdf

Wenn dir schon inhaltlich-ökonomisch bekannt ist, dass einige Variablen inhaltlich das gleiche aussagen, würde ich sie schon a priori aus der Analyse herausnehmen. Generell finde ich es immer hilfreich, möglichst viel Wissen aus der Anwendungsdomäne mit einfließen zu lassen. Wenn auch weiterhin eine Multikolinearität besteht, sollte diese zunächst soweit wie möglich reduziert werden (siehe z.B. https://newonlinecourses.science.psu.ed ... /node/343/ ).

Hinsichtlich des Aufbaus einer Paneldatendarstellung gibt es sowohl das long- als auch das wide-format. Eine ganz gute Erklärung der Unterschiede gibt es hier: https://www.theanalysisfactor.com/wide-and-long-data/
und eine Darstellung, wie man das eine Format in das andere transformieren kann, hier: http://www.cookbook-r.com/Manipulating_ ... ng_format/
jogo
Beiträge: 2085
Registriert: Fr Okt 07, 2016 8:25 am

Re: Alternative zur Stepwise Regression bei Panel-Daten

Beitrag von jogo »

Hallo Mara,

willkommen im Forum!
Wir freuen uns sehr über jeden, der sich bei der Beantwortung der Fragen einbringt.

Wenn Du möchtest, kannst Du auch bei diesem Thema beitragen:
viewtopic.php?f=24&t=233

Gruß, Jörg
Sentinel66
Beiträge: 16
Registriert: Mo Aug 06, 2018 12:33 pm

Re: Alternative zur Stepwise Regression bei Panel-Daten

Beitrag von Sentinel66 »

Testv3.csv
Stichprobe
(196.4 KiB) 45-mal heruntergeladen
Hallo Mara,

vielen Dank für deinen Input.

Im Anhang habe ich meine Datei eingefügt.

Die Daten für meine unbalanced Panel habe ich im Long-Format aufbereitet. (Hatte einen ähnlichen Datensatz zum Thema als Vorlage, welcher jedoch balanced war). Jedoch scheint es in meinem Datensatz noch einen Fehler zu geben. Ich habe die Daten als Panel-Daten einlesen können, wenn ich jedoch ein FEM, RAM oder Pooling Modell anwenden möchte erscheint folgende Fehlermeldung, die ich nicht deuten kann:
use of 'plm.data' is discouraged, better use 'pdata.frame' instead
> pdata <- pdata.frame(Master, index=c("UN1","t"))
> #### Pooled Regression
> pool <- plm(y ~ x, data = pdata, model= "pooling")
Fehler in class(x) <- setdiff(class(x), "pseries") :
ungültig die Klasse auf Matrix zu setzen, außer das Dimensionsattribut hat Länge 2 (war 0)
> #### Fixed Effects Model
> fem <- plm(y ~ x, data = pdata, model= "within", effect= "individual")
Fehler in class(x) <- setdiff(class(x), "pseries") :
ungültig die Klasse auf Matrix zu setzen, außer das Dimensionsattribut hat Länge 2 (war 0)

Das die stepwise-Regression nicht der Weisheit letzter Schluss ist habe ich mittlerweile auch herausgefunden. Danke nochmal für den Link, den du beigefügt hast. Der fast das Thema gut zusammen. Ich soll dieses Verfahren trotzdem anwenden in Rücksprache mit meinem Betreuer.
Danke für deinen Tipp mit My.stepwise. Wie definiere ich denn die Liste mit den Variablen in Spalten und Zeilen Form?

Zum Thema Mutlikolinioarität:
Einige Variablen habe ich bereits ausgeschlossen, wobei zum Beispiel noch ein Gewinn vor Steuern (EBT) und ein Net Income (Jahresüberschuss) übrig bleiben. Durch die stepwise geht es jetzt um Feinheiten dazu, z.B. ob die Absolute Höhe entscheidend für meine abhängige Variable ist, die prozentuale Veränderung gegenüber dem Vorjahr oder ob es zum Beispiel reicht ob ein Verlust vorliegt (Dummy-Variable).

Mit freundlichen Grüßen
Marco
Benutzeravatar
EDi
Beiträge: 1599
Registriert: Sa Okt 08, 2016 3:39 pm

Re: Alternative zur Stepwise Regression bei Panel-Daten

Beitrag von EDi »

Durch die stepwise geht es jetzt um Feinheiten dazu, z.B. ob die Absolute Höhe entscheidend für meine abhängige Variable ist, die prozentuale Veränderung gegenüber dem Vorjahr oder ob es zum Beispiel reicht ob ein Verlust vorliegt (Dummy-Variable).
Kann man das nicht anhand der Koeffizienten ablesen?
Bitte immer ein reproduzierbares Minimalbeispiel angeben. Meinungen gehören mir und geben nicht die meines Brötchengebers wieder.

Dieser Beitrag ist lizensiert unter einer CC BY 4.0 Lizenz
Bild.
Sentinel66
Beiträge: 16
Registriert: Mo Aug 06, 2018 12:33 pm

Re: Alternative zur Stepwise Regression bei Panel-Daten

Beitrag von Sentinel66 »

Hallo Edi,

könnte man auch ablesen. Ich habe gerade das Problem, dass ich folgenden Fehler erhalte, wenn ich ein Panel-Modell rechnen lassen will

Fehler in class(x) <- setdiff(class(x), "pseries") :
ungültig die Klasse auf Matrix zu setzen, außer das Dimensionsattribut hat Länge 2 (war 0)
> summary(pool)


Somit kann ich nicht einmal eine Aussage über die Koeffizienten treffen.
Antworten