Seite 1 von 1

Frage zu lineare Regression/ multiple Regression

Verfasst: Mo Mai 07, 2018 8:32 pm
von Lena123
Hallo zusammen :)

ich schreibe gerade meine Bachelorarbeit und komme bei der Auswertung mit R nicht weiter, würde mich sehr freuen, wenn mir jemand helfen könnte :) es ist glaube ich mehr eine generelle Statistikfrage, aber da ich das direkt in R machen soll, dachte ich, ich frage hier. Hoffe das ist okay!

Es geht darum: Ich habe einen Datensatz mit 2 Gruppen (Experimentalgruppe und Kontrollgruppe, codiert als 1 und 2), unabhängigen Variablen und abhängigen Variablen. Experimentalgruppe und Kontrollgruppe haben etwas unterschiedliches gemacht, nämlich verschiedene Spiele gespielt. Sonst ist aber alles gleich, also bei allen wurden die gleichen UVs und AVS gemessen. Meine Aufgabe ist jetzt, mit diesen Daten verschiedene einfache Regressionen und Multiple Regressionen zu rechnen.

Eine Regression soll von der Gruppenzugehörigkeit, also dem Spiel, auf eine bestimmte AV gerechnet werden, d. h. also, ich will schauen, ob die Spiele unterschiedlich starke Effekte auf eine AV haben. Für die AV habe ich aus mehreren Items eine Skala gebildet. Nur ich weiß nicht so ganz, wie ich jetzt mit der Gruppenzugehörigkeit umgehen soll :( wie kann ich die als "Wert" anwählen, mit dem ich den lm-Befehl rechnen kann? Muss ich für beide Gruppen jeweils ein Subset erstellen oder rechne ich mit dem Gesamtdatensatz, der beide Gruppen enthält?

Würde mich sehr sehr über eine Antwort freuen :)

Liebe Grüße,
Lena :)

Re: Frage zu lineare Regression/ multiple Regression

Verfasst: Mo Mai 07, 2018 8:44 pm
von jogo
Hallo Lena,

willkommen im Forum!
Lena123 hat geschrieben: Mo Mai 07, 2018 8:32 pm Eine Regression soll von der Gruppenzugehörigkeit, also dem Spiel, auf eine bestimmte AV gerechnet werden, d. h. also, ich will schauen, ob die Spiele unterschiedlich starke Effekte auf eine AV haben. Für die AV habe ich aus mehreren Items eine Skala gebildet. Nur ich weiß nicht so ganz, wie ich jetzt mit der Gruppenzugehörigkeit umgehen soll :( wie kann ich die als "Wert" anwählen, mit dem ich den lm-Befehl rechnen kann? Muss ich für beide Gruppen jeweils ein Subset erstellen oder rechne ich mit dem Gesamtdatensatz, der beide Gruppen enthält?
Meinst Du so etwas wie eine Diskriminanzanalyse?

Gruß, Jörg

Re: Frage zu lineare Regression/ multiple Regression

Verfasst: Mo Mai 07, 2018 9:16 pm
von Lena123
Hallo Jörg :) Vielen Dank für die Begrüßung und die schnelle Antwort!

Nein, es geht nur um Regressionen. Also im Prinzip möchte ich den Determinationskoeffizient wissen. Inwiefern sagt das Spiel 1 oder 2 (Gruppe 1 oder 2) den Wert auf der AV Einstellung zum Umweltschutz vorher. Die Gruppenzugehörigkeit ist auch eine UV. Ich denke, ich soll für beide Gruppen eine Regression auf diese AV rechnen, aber ich weiß eben leider nicht, wie ich die Gruppenzugehörigkeit als UV verarbeite ;/

Re: Frage zu lineare Regression/ multiple Regression

Verfasst: Mo Mai 07, 2018 9:23 pm
von jogo
Hallo Lena,

zeig doch mal die Struktur Deines Dataframes und den Code, mit dem Du bisher arbeitest.
Bei einem linearen Modell (.. lm() ..) dürfen auch nominalskalierte Variablen (z.B. die Gruppenzugehörigkeit) als Prädiktoren auf der rechten Seite der Formel erscheinen.

Gruß, Jörg

Re: Frage zu lineare Regression/ multiple Regression

Verfasst: Di Mai 08, 2018 12:17 pm
von Lena123
Bitte entschuldige, wenn das etwas diffus war, ich versuch es mal mit Code verständlicher zu beschreiben :)

ds ist mein ganzer Datensatz, dieser enthält als erstes ds$gruppe, also 2 verschiedene Gruppen die was unterschiedliches gemacht haben. Ansonsten sind die anderen Spalten verschiedene Variablen, alle "avector", "numeric" von 1-7, für beide Gruppen genau gleich.

Code: Alles auswählen

str(ds$gruppe)
Classes 'avector', 'character'  atomic [1:180] 1 1 2 1 ...
Gruppe ist meine UV, die ich in der Regression verwenden will. Ich habe die Befürchtung, dass 'character` nicht dafür geeignet ist, weiß aber leider nicht, in was ich es umwandeln soll :/

Meine Idee war jetzt erstmal, den Datensatz in die beiden Gruppen aufzuteilen:

Code: Alles auswählen

subset(ds, ds$gruppe=="1")

Experimentalgruppe <- subset(ds, ds$gruppe=="1")

subset(ds, ds$gruppe=="2")

Kontrollgruppe <- subset(ds, ds$gruppe=="2")
Meine AV für die Regression in der Experimentalgruppe wäre diese:

Code: Alles auswählen

str(Experimentalgruppe$Einstellung_Umweltschutz)
num [1:91] 4.6 5.47 5.8 6.07 6.67 ...
Ich habe diese mit rowMeans aus verschiedenen AVs erstellt, die zusammen eben die Einstellung wiedergeben sollen. Auch hier die Befürchtung, dass num nicht richtig ist und hier zusätzlich `avector`stehen müsste.

Also im Prinzip möchte ich wissen, wie sehr die Zugehörigkeit in Gruppe 1 dazu führt, dass die Einstellung zur Umwelt besser wird und wie sehr die Zugehörigkeit in Gruppe 2 dazu führt, dass die Einstellung zur Umwelt besser wird, und das mit 2 getrennten einfachen Regressionen. Ich denke, dass ich da statistisch auf mehreren Ebenen flasch liege, habe aber kein Skript zu Regression, dass mit zwei Gruppen arbeitet oder überhaupt mit sowas wie der Gruppenzugehörigkeit, deshalb komm ich da gerade leider echt nicht weiter. Wäre über Hinweise sehr dankbar.

Liebe Grüße,

Lena

Re: Frage zu lineare Regression/ multiple Regression

Verfasst: Di Mai 08, 2018 1:45 pm
von bigben
Hallo Lena,

das mit dem 'avector' habe ich noch nicht verstanden, aber versuch mal, was dabei passiert:

Code: Alles auswählen

summary(lm(Einstellung_Umweltschutz ~ gruppe - 1, data = ds))
Normalerweise ist R mit der Unterscheidung zwischen character und factor da nicht kleinlich.

Mindestens in diesem Beispiel klappt das:

Code: Alles auswählen

d <- data.frame(a = c("1", "2", "1", "2", "1", "2", "1"), 
                b = c(1, 2, 1, 2, -1, 2.1, 0), 
                stringsAsFactors = FALSE)
print(str(d))
regr <- lm(b ~ a - 1, data = d)
print(summary(regr))
LG,
Bernhard

Re: Frage zu lineare Regression/ multiple Regression

Verfasst: Di Mai 08, 2018 3:06 pm
von Lena123
Dankeschön! Ich habe die Gruppen jetzt nicht in einzelne Dataframes gepackt, sondern Einstellung_Umweltschutz im Gesamtdatensatz gebildet und dann deinen Befehl eingegeben und mir wird ein Output für beide Gruppe angezeigt, mit einer anderen AV hat das so auch funktioniert. Dass Gruppe die Klasse Character hat, war tatsächlich kein Problem. Ich bin mir nicht 100% sicher, ob ich das so richtig gemacht habe, aber es ist so ein tolles Gefühl, wenn endlich mal nicht Error angezeigt wird und ich werde damit jetzt erstmal weiter probieren.

Vielen lieben Dank euch beiden!

Liebe Grüße,

Lena