0 votes
in Datenauswertung by s093182 (210 points)

Hallo ihr Lieben,

ich hänge gerade beim Hypothesentest in meiner BA fest.
Ich möchte für eine metrische Variable einen Media Split durchführen in R Studio und weiß einfach nicht, wie es geht und finde keinen Befehl dazu.
Ich mache den Median Split damit anschließend mit jeder Gruppe einzeln eine Korrelation durchführen möchte.
Wisst ihr da vielleicht Bescheid?

Merci und beste Grüße

1 Answer

0 votes
by SoSci Survey (305k points)

Berechnen Sie einfach den Median und erstellen Sie dann durch Subsets zwei Teildatensätze.

med = median(df$AB01, na.rm=T)
df1 = df[which(df$AB01 < med), ]
df2 = df[which(df$AB01 >= med), ]
by s093182 (210 points)
vielen dank!
komischerweisen werden die Gruppen nicht gleich groß.
also eine ist 196 und eine 230.. woher könnte das kommen?
Hier mal meine Codes..

# Mediansplit med_a
# Gruppe wenig SWK = Lebensstil_data_oA_1a
# Gruppe viel SWK = Lebensstil_data_oA_2a

med_a = median(Lebensstil_data_ohne_Ausreißer$SWK)

Lebensstil_data_oA_1a = Lebensstil_data_ohne_Ausreißer[which(Lebensstil_data_ohne_Ausreißer$SWK < med_a), ]

Lebensstil_data_oA_2a = Lebensstil_data_ohne_Ausreißer[which(Lebensstil_data_ohne_Ausreißer$SWK >= med_a), ]
by SoSci Survey (305k points)
> komischerweisen werden die Gruppen nicht gleich groß.

Das ist überhaupt nicht komisch. Ich vermute, Ihre Variable ist ein diskreter Wert? Dann kommt es darauf an, ob Sie "kleiner" und "größer gleich" verwenden (wie im Beispiel oben) oder "kleiner gleich" und "größer".
by s093182 (210 points)
edited by s093182
ja, die Variable ist ein Summenscore mehrerer Items.
Das Problem kommt auch erst auf, wenn ich weiter rechne.
Ich möchte die Mittelwerte der Variable SWK der Gruppe 1 und Gruppe 2 vergleichen. Also levene test, t-test und anschließend eine Korrelation rechnen in den beiden Gruppen. Aber es scheitert schon am Levene Test, weil die beiden neuen Datensätze / Gruppen nicht gleich groß sind.
Bei meinem Vergleich von Männern und Frauen hat das ja aber auch funktioniert obwohl ich keine gleiche Anzahl an Personen hatte in den Gruppen.

Der Levene Test gibt folgende Meldung heraus:
leveneTest(Lebensstil_data_oA_1a$SWK, Lebensstil_data_oA_2a$SWK)
Fehler in complete.cases(y, group) :
  nicht alle Argumente haben gleiche Länge

Habt ihr da eine Lösung?
by SoSci Survey (305k points)
> Aber es scheitert schon am Levene Test, weil die beiden neuen Datensätze / Gruppen nicht gleich groß sind.

> Fehler in complete.cases(y, group)
> nicht alle Argumente haben gleiche Länge

Bitte lesen Sie außerdem nochmal die Dokumentation des Levene-Test nach: https://www.rdocumentation.org/packages/lawstat/versions/3.2/topics/levene.test

Hier werden nicht wie beim t.test() die beiden Datensätze angegeben, sondern ein (!) Datensatz und die Gruppenzugehörigkeit. Selbige können Sie wie folgt im ursprünglichen Datensatz speichern:

med = median(df$SWK)
df$group = NA
df[which(df$AB01 < med), "group"] = "wenig SWK"
df[which(df$AB01 >= med), "group"] = "viel SWK"
df$group = factor(df$group)
by s093182 (210 points)
Ich habe es geahnt, dass es an den neuen Datensätzen liegt.
Mega cool, danke für die Hilfe!
noch eine doofe Frage:
"group" lasse ich einfach so oder muss ich dafür noch was einsetzen?
by SoSci Survey (305k points)
Wenn Sie Ihre Variable df$group nennen, dann können Sie df$group im Funktionsaufruf auch so verwenden.
by s093182 (210 points)
ok, hat auch so funktioniert.
Wie kann ich mir nun aber die Mittelwerte der Gruppe "viel SWK" und "wenig SWK" ansehen?
Und was trage ich dann in den leveneTest ein?

Danke!! :)
by SoSci Survey (305k points)
Ich denke, das mit dem Levene-Test bekommen Sie mir der R-Anleitung hin ;)

Und die Mittelwerte aus den beiden Teil-Datensätzen können Sie einfach mit mean() berechnen.
by s093182 (210 points)
edited by s093182
Ich bin ein bisschen verwirrt.
Die neue Variable "group" bzw bei mir "SWK_H3" ist ja keine numerische Variable mehr.

leveneTest(df$SWK, df$SWK_H3)

R weiß mit diesem Befehl also, dass er die zugehörigen SWK Werte der jeweiligen Gruppen nutzt?
Tut mir leid, ich blicke da gerade absolut nicht durch :/

und der Mittelwert funktioniert leider nicht.
Oder verwende ich für die Berechnung die beiden Teildatensätze, die ich als erstes (siehe erste Antwort von euch) berechnet habe? Ich dachte die seien hinfällig, jetzt wo ich den Split innerhalb des Datensatzes erstellt habe :)

DANKE!
by SoSci Survey (305k points)
> Die neue Variable "group" bzw bei mir "SWK_H3" ist ja keine numerische Variable mehr.

Nein - die Gruppenzugehörigkeit ist ja nicht intervallskaliert, sondern nominal. In R also ein factor.

> Oder verwende ich für die Berechnung die beiden Teildatensätze

Ja. Wobei Sie diese nicht extra speochern müssen, sondern die Subsets auch direkt in median() oder mean() eintragen können.

Noch einfacher ist es, wenn Sie Tidyverse verwenden und dort group_by().

Willkommen im Online-Support von SoSci Survey.

Hier bekommen Sie schnelle und fundierte Antworten von anderen Projektleitern und direkt von SoSci Survey.

→ Eine Frage stellen


Welcome to the SoSci Survey online support.

Simply ask a question to quickly get answers from other professionals, and directly from SoSci Survey.

→ Ask a Question

...