Der Bernhard hat Deine Daten quick-and-dirty per copy-paste aus Excel nach R geholt und dann per dput() den Code oben erstellt. Wenn Du wissen willst, wie man die Daten best practice einladen sollte, dann kannst Du auf Hufeisens Angebot eingehen.
Wenn Du wissen willst, wie man einzelne Skalen per t-Test oder ANOVA auf Geschlechtsunterschiede untersucht, dann habe ich Dir das oben vorgemacht.
Was also ist die nächste Auswertung, die Du anstrebst? Bist Du sicher, dass da noch Schritte kommen, für die man das lange Format überhaupt braucht?
LG,
Bernhard
mehrere Items zusammenfügen
Re: mehrere Items zusammenfügen
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Re: mehrere Items zusammenfügen
Also als Unabhängige Variablen habe ich: Form Medium und Bewegungsart
Und als Abhängige Variable: Angst
Die Hypothesen die untersucht werden sollen sind
1) Aufnahmen jeder Art von schlängelnden Schlangen rufen mehr Angst hervor als Aufnahmen von kriechenden Schlangen. Zwischen den Gruppen schwimmen und schlängeln erwarten wir keinen signifikanten Unterschied.
-> hier würde man eine MANOVA durchführen, denke ich.
2) Durch die Bewegung der Schlange wird die wahrgenommene Angst verstärkt. Demnach lösen Videos in denen die Schlangrn sich bewegen mehr Angst aus.
-> hier reicht ein t-Test?
3) Frauen nehmen über alle Kategorien hinweg mehr Angst wahr als männliche Probanden
-> hier auch t-Test
Und als Abhängige Variable: Angst
Die Hypothesen die untersucht werden sollen sind
1) Aufnahmen jeder Art von schlängelnden Schlangen rufen mehr Angst hervor als Aufnahmen von kriechenden Schlangen. Zwischen den Gruppen schwimmen und schlängeln erwarten wir keinen signifikanten Unterschied.
-> hier würde man eine MANOVA durchführen, denke ich.
2) Durch die Bewegung der Schlange wird die wahrgenommene Angst verstärkt. Demnach lösen Videos in denen die Schlangrn sich bewegen mehr Angst aus.
-> hier reicht ein t-Test?
3) Frauen nehmen über alle Kategorien hinweg mehr Angst wahr als männliche Probanden
-> hier auch t-Test
Re: mehrere Items zusammenfügen
Klar, einfach die Funktion head() weglassen. Die habe ich benutzt, weil ich nicht 60 Zeilen kopieren und so den Codeblock unnötig lang machen wollte. Die Funktion aggregate macht aber eigentlich nicht mehr, als die Spalten VPNnr und Geschlecht an die neueTabelle anzubinden, wenn du auch nach VPNnr aggregieren lässt.
Re: mehrere Items zusammenfügen
Hallo Vnsa,
dass Du für einfache t-Tests die Daten nicht weiter umformen musst, habe ich ja oben vorgeführt und wenn MANOVA die richtige Methode für Deine Fragestellung ist, dann würde ich da ganz ähnlich vorgehen: "Gesamt"-Spalten im data.frame erzeugen wie oben vorgeführt und dann gibt es in R eine Funktion manova(). https://www.statmethods.net/stats/anova.html
Bis hierhin sehe ich an Deinen Anforderungen noch nicht, wo Du das tidyverse mit seiner Vorliebe für Daten im langen Format brauchst.
LG,
Bernhard
dass Du für einfache t-Tests die Daten nicht weiter umformen musst, habe ich ja oben vorgeführt und wenn MANOVA die richtige Methode für Deine Fragestellung ist, dann würde ich da ganz ähnlich vorgehen: "Gesamt"-Spalten im data.frame erzeugen wie oben vorgeführt und dann gibt es in R eine Funktion manova(). https://www.statmethods.net/stats/anova.html
Bis hierhin sehe ich an Deinen Anforderungen noch nicht, wo Du das tidyverse mit seiner Vorliebe für Daten im langen Format brauchst.
LG,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Re: mehrere Items zusammenfügen
vielen lieben Dank für die ganze Hilfe. Bisher hat mir das wirklich sehr geholfen.
Ich weiß, dass man für den einfachen t-Test nicht das long Format benötigt.
Nur weiß ich eben nicht, was mit den Daten noch gemacht werden muss, dafür muss ich wieder in die Sprechstunde. Und dort wurde wie gesagt, gesagt, dass wir das erst mal ins long Format bringen müssen.
Ich habe mal ein Bild angehängt, die eine Skizze von ihm zeigt, wie er die Tabelle gerne hätte:
Versucht haben es meine Kolleginnen so:
Das sind die jeweiligen Fehlermeldungen:
Fehler in reshapeLong(data, idvar = idvar, timevar = timevar, varying = varying, :
'lengths(varying)' must all match 'length(times)'
Fehler in data[, idvar] : Indizierung außerhalb der Grenzen
Ich weiß, dass man für den einfachen t-Test nicht das long Format benötigt.
Nur weiß ich eben nicht, was mit den Daten noch gemacht werden muss, dafür muss ich wieder in die Sprechstunde. Und dort wurde wie gesagt, gesagt, dass wir das erst mal ins long Format bringen müssen.
Ich habe mal ein Bild angehängt, die eine Skizze von ihm zeigt, wie er die Tabelle gerne hätte:
Versucht haben es meine Kolleginnen so:
Code: Alles auswählen
names(neueTabelle)[1] <- "Bilder_Base"
names(neueTabelle)[2] <- "Bilder_Kriechen"
names(neueTabelle)[3] <- "Bilder_Schlängeln"
names(neueTabelle)[4] <- "Bilder_Schwimmen"
names(neueTabelle)[5] <- "Video_Base"
names(neueTabelle)[6] <- "Video_Kriechen"
names(neueTabelle)[7] <- "Video_Schlängeln"
names(neueTabelle)[8] <- "Video_Schwimmen"
schlangen.long<- reshape(neueTabelle, direction = "long", varying = list("Bilder_Base","Bilder_Kriechen","Bilder_Schlängeln", "Bilder_Schwimmen","Video_Base","Video_Kriechen","Video_Schlängeln", "Video_Schwimmen"),idvar=c("VPNnr","Geschlecht"),timevar= "Mediumsbedingung")
schlangen.long <- reshape(neueTabelle ,direction = "long", varying=list(names(neueTabelle)[1:8]),v.names="Durchschnittswert",idvar=c("VPNnr","Geschlecht"),timevar= "Mediumsbedingung", times = names(neueTabelle)[1:8])
schlangen.long <- reshape(neueTabelle ,direction = "long", varying=list(names(neueTabelle)[1:8]),v.names="Durchschnittswert",idvar=c("VPNnr","Geschlecht"),timevar= "Mediumsbedingung", times = list(names(neueTabelle)[1:8]))
schlangen.long <- reshape(neueTabelle, direction = "long", varying=list(names(neueTabelle)[1:8]),v.names="Durchschnittswert",idvar=c("VPNnr", "Geschlecht"),timevar= "Mediumsbedingung", times = names(neueTabelle)[1:8])
Fehler in reshapeLong(data, idvar = idvar, timevar = timevar, varying = varying, :
'lengths(varying)' must all match 'length(times)'
Fehler in data[, idvar] : Indizierung außerhalb der Grenzen
Re: mehrere Items zusammenfügen
Die Daten in das long-Format zu bringen, schadet zumindest nicht, wenn es in Deinem Praktikum darum geht, die Datenaufbereitung zu erlernen (so hatte ich das verstanden). Und nebenbei: Du machst das ganz großartig. Die Lernkurve ist in R sowieso sehr steil und dann rät man Dir auch noch dazu, die ersten Schritte außerhalb von base R zu machen. Das ist so, als müsste man auf einem Einrad lernen, Fahrrad zu fahren. Ob es für die Analyse der Daten nötig ist, hängt eher davon ab, in welches Verfahren man die Daten einspeisen möchte. Viele Funktionen im tidyverse mögen Daten im long-Format, diese sind aber nicht immer nötig. Das hatte Bernhard ja schon ausgeführt.
Der Befehl reshape ist wohl der falsche für Euch.
Der Befehl reshape ist wohl der falsche für Euch.
Schau dir mal die Funktion melt() an: ?reshape2::meltThis function reshapes a data frame between ‘wide’ format with repeated measurements in separate columns of the same record and ‘long’ format with the repeated measurements in separate records.
Code: Alles auswählen
# neueTabelle als matrix - will nicht so recht
> melt(neueTabelle) [c(56:65), ]
Var1 Var2 value
56 56 Bilder_Base 5.0
57 57 Bilder_Base 3.4
58 58 Bilder_Base 1.8
59 59 Bilder_Base 1.2
60 60 Bilder_Base 1.4
61 1 Bilder_Kriechen 1.8
62 2 Bilder_Kriechen 1.0
63 3 Bilder_Kriechen 1.4
64 4 Bilder_Kriechen 2.4
65 5 Bilder_Kriechen 1.6
# neueTabelle als data.frame
neueTabelle <- as.data.frame(neueTabelle)
> melt(neueTabelle) [c(56:65), ]
No id variables; using all as measure variables
variable value
56 Bilder_Base 5.0
57 Bilder_Base 3.4
58 Bilder_Base 1.8
59 Bilder_Base 1.2
60 Bilder_Base 1.4
61 Bilder_Kriechen 1.8
62 Bilder_Kriechen 1.0
63 Bilder_Kriechen 1.4
64 Bilder_Kriechen 2.4
65 Bilder_Kriechen 1.6