Hallo,
ich hoffe, dass ich mich ein bisschen ausdrücken kann und mein Problem erklären. Ich bin nicht sehr klug was das hier angeht. Leider muss ich für meine Bachelorarbeit meine Daten mit R auswerten. In einer Hausarbeit hat auch alles funktioniert und mit anderen Datensätzen, funktionieren die Befehle auch. Ich hab eine csv Datei mit 421 Datensätzen eingeladen und damit möchte und muss ich erst mal eine Kreuztabelle erstellen. Allerdings verstehe ich nicht wo das Problem liegt. In meinem Studienheft steht noch eine Funktion mit tabular(), aber auch die bringt nur MIst raus mit dem Datensatz für meine Bachelorarbeit. Leider kann mir niemand in meinem Bekanntkreis helfen und ich drehe bald durch, weil die Zeit dann eng wird, wenn sich das Problem nicht löst. Ich hoffe jemand weiß eine Lösung, warum nicht bio und ide als Spalten und anders, divers, m und w als zeilen mit absoluten Häufigkeiten. Ich bin über jeden Tipp und jede Hilfe dankbar.
table(daten$ide, daten$bio)
Anderes Divers Männlich Weiblich
113 0 0 6 4
Anderes 2 1 0 5 5
Divers 1 0 2 15 7
Männlich 2 0 0 117 4
Weiblich 2 1 1 33 100
kreuztabelle funktioniert nicht
Re: kreuztabelle funktioniert nicht
Hallo Carla,
willkommen im Forum!
Kannst Du bitte den Output vonin Deine nächste Nachricht kopieren.
Das kann dann schon einiges zur Aufklärung beitragen.
Und bitte verwende Formatierungen: viewtopic.php?f=20&t=29
Gruß, Jörg
willkommen im Forum!
Kannst Du bitte den Output von
Code: Alles auswählen
str(daten)
Das kann dann schon einiges zur Aufklärung beitragen.
Und bitte verwende Formatierungen: viewtopic.php?f=20&t=29
Gruß, Jörg
Re: kreuztabelle funktioniert nicht
Hallo Carla,
ich schaue mal in die Kristallkugel und nehme mal ein Beispiel aus meiner Schublade. Ausgehend von einer CSV-Datei, die eingelesen in R folgende Struktur hat
verpasse ich ich den verschiedenen Ausprägungen (Zustimmung 1 - 3, Geschlecht 1 & 2) ein Label und mache Faktoren daraus:
Danach habe ich diesen Dataframe vorliegen:
Nun erstelle ich darauf basierend eine Tabelle:
Ploten kannst Du das so:
Zur Tabelle werden die Randsummen hinzugefügt:
Und die Tabelle noch relativiert:
Und zum Schluss noch den Chi2-Test:
Wenn Du das Beispiel nachvollziehen möchtest, die CSV-Datei Sommerzeit habe beigefügt. Vielleicht hilft das Beispiel weiter...!
ich schaue mal in die Kristallkugel und nehme mal ein Beispiel aus meiner Schublade. Ausgehend von einer CSV-Datei, die eingelesen in R folgende Struktur hat
Code: Alles auswählen
> Daten <- read.csv2("Sommerzeit.csv")
> str(Daten)
'data.frame': 517 obs. of 2 variables:
$ Zustimmung: int 1 1 1 1 1 1 1 1 1 1 ...
$ Geschlecht: int 1 1 1 1 1 1 1 1 1 1 ...
Code: Alles auswählen
> Daten$Zustimmung <- factor(Daten$Zustimmung, labels = c("ja", "nein", "unschlüssig"))
> Daten$Geschlecht <- factor(Daten$Geschlecht, labels = c("Frau", "Mann"))
Code: Alles auswählen
> str(Daten)
'data.frame': 517 obs. of 2 variables:
$ Zustimmung: Factor w/ 3 levels "ja","nein","unschlüssig": 1 1 1 1 1 1 1 1 1 1 ...
$ Geschlecht: Factor w/ 2 levels "Frau","Mann": 1 1 1 1 1 1 1 1 1 1 ...
Code: Alles auswählen
> DatenTabelle <- table(Daten)
> DatenTabelle
Geschlecht
Zustimmung Frau Mann
ja 68 134
nein 130 75
unschlüssig 59 51
Code: Alles auswählen
> barplot(DatenTabelle, main = "Zustimmung zur Sommerzeit", ylab = "Anzahl", beside = TRUE, legend = TRUE)
Code: Alles auswählen
> DatenTabelle <- addmargins(table(Daten$Zustimmung, Daten$Geschlecht))
> DatenTabelle
Frau Mann Sum
ja 68 134 202
nein 130 75 205
unschlüssig 59 51 110
Sum 257 260 517
Code: Alles auswählen
> TabRel <- prop.table(DatenTabelle)
> TabRel
Geschlecht
Zustimmung Frau Mann
ja 0.13152805 0.25918762
nein 0.25145068 0.14506770
unschlüssig 0.11411992 0.09864603
Code: Alles auswählen
> Ergebnis <- chisq.test(DatenTabelle, correct = FALSE)
> Ergebnis
Pearson's Chi-squared test
data: DatenTabelle
X-squared = 36.886, df = 2, p-value = 9.779e-09
- Dateianhänge
-
- Sommerzeit.csv
- (2.55 KiB) 12-mal heruntergeladen
Viele Grüße,
Student
-----------------------------------------------------------------------------------------------------------------------
faes.de, Datenanalyse mit R & das Ad-Oculos-Projekt
Das Ad-Oculos-Projekt auf YouTube
Habe Mut, dich deines eigenen Verstandes zu bedienen! (Kant)
Student
-----------------------------------------------------------------------------------------------------------------------
faes.de, Datenanalyse mit R & das Ad-Oculos-Projekt
Das Ad-Oculos-Projekt auf YouTube
Habe Mut, dich deines eigenen Verstandes zu bedienen! (Kant)
Re: kreuztabelle funktioniert nicht
Hast Du irgendwo den Versuch gemacht, das Problem zu erklären? Habe ich dann wohl überlesen.
Ich bin nicht sehr klug was das hier angeht.
Deine Ausbilder halten Dich für klug genug, das hier in R zu machen. So schlimm wird es mit der mangelnden Klugheit wohl nicht sein. Wäre aber klug gewesen zu beschreiben, worin Du das Problem siehst.
Das Mitleid dazu wird in einem R-Forum begrenzt bleiben, aber das ist Dir bestimmt klar, oder?Leider muss ich für meine Bachelorarbeit meine Daten mit R auswerten
Ich hab eine csv Datei mit 421 Datensätzen eingeladen und damit möchte und muss ich erst mal eine Kreuztabelle erstellen. Allerdings verstehe ich nicht wo das Problem liegt.
Ich auch nicht. Wenn die Datensätze eingeladen sind, ist ein wichtiger Schritt schon erledigt und weiter unten zeigst Du, dass Du erfolgreich eine Kreuztabelle erstellt hast.
aber auch die bringt nur MIst raus mit dem Datensatz für meine Bachelorarbeit.
"Mist" dürfte hier allegorisch gemeint sein. Echter Mist entsteht eher in Ställen. Ist das mit dieser anderen Funktion relevant, oder reicht table() für Dein Problem aus?
Darin scheint sich die Problembeschreibung zu verstecken. Da fehlt aber mindestens ein Verb/Prädikat im Nebensatz. So passt es nicht zur deutschen Syntax. Wenn ich mir ein Prädikat dazu denke, habe ich den Eindruck, dass Du falsche Vorstellungen davon hast, was eine Kreuztabelle ist. Wäre das möglich? Willst Du am Ende einfache Häufigkeitstabellen mittelsIch hoffe jemand weiß eine Lösung, warum nicht bio und ide als Spalten und anders, divers, m und w als zeilen mit absoluten Häufigkeiten.
Code: Alles auswählen
table(daten$ide); table(daten$bio)
Die Tabelle hat es zerhauen, weil Du meinen Rat von hier noch nicht befolgt hast: viewtopic.php?f=20&t=29table(daten$ide, daten$bio)
Anderes Divers Männlich Weiblich
113 0 0 6 4
Anderes 2 1 0 5 5
Divers 1 0 2 15 7
Männlich 2 0 0 117 4
Weiblich 2 1 1 33 100
Scheint so, als hättest Du all diese Leute danach befragt, welches Geschlecht ihrer subjektiven Identität und welches ihrer Biologie entspricht. Anscheinend haben 113 die Frage zu dämlich gefunden und nicht geantwortet und 117 waren übereinstimmend männlich, 100 übereinstimmend weiblich und alle anderen sind sehr schön kreuztabelliert. Ich hätte am ehesten ein Problem mit der Frage, worin sich "anders" von "divers" unterscheidet, aber das ist wohl eher nicht Dein Problem. Welches ist Dein Problem? Idealerweise in einem syntaktisch und korrekten deutschen Satz?
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