Kreuztabelle mit unterschiedlicher Länge von Argumenten

Alles zum Thema der beschreibenden Statistik

Moderator: jogo

Antworten
communicationscience
Beiträge: 8
Registriert: Di Jan 19, 2021 3:11 pm

Kreuztabelle mit unterschiedlicher Länge von Argumenten

Beitrag von communicationscience »

Hallo,

ich habe aus meinen Datensatz einen ausgewählten Fall herausgefiltert. Personen die unter 25 Jahre alt sind und die linke Parteien wählen. Nun möchte ich in einer Kreuztabelle diese Personengruppe mit ihrem Bildungsabschluss vergleichen.

Es kommt ständig dieser Fehler:
Fehler in table(uebung_auswahllinks, F19Ab) :
alle Argumente müssen die selbe Länge haben

Wie kann ich diesen beheben?
jogo
Beiträge: 2085
Registriert: Fr Okt 07, 2016 8:25 am

Re: Kreuztabelle mit unterschiedlicher Länge von Argumenten

Beitrag von jogo »

Bitte gib für die im Funktionsaufruf verwendeten Objekte reproduzierbare Beispiele.

Gruß, Jörg
communicationscience
Beiträge: 8
Registriert: Di Jan 19, 2021 3:11 pm

Re: Kreuztabelle mit unterschiedlicher Länge von Argumenten

Beitrag von communicationscience »

Ich habe es bisher so versucht:

Code: Alles auswählen

Uebungsdatensatz_auswahllinks <- subset(Uebungsdatensatz, ((Uebungsdatensatz$F13Alter < 25) 
                                                      & (Uebungsdatensatz$fact_F9Sonntags_rec == "links")))
Uebungsdatensatz_auswahlrechts <- subset(Uebungsdatensatz, ((Uebungsdatensatz$F13Alter > 21) 
                                                           & (Uebungsdatensatz$fact_F9Sonntags_rec == "konservativ")))
table(Uebungsdatensatz_auswahllinks, F19Ab)
table(Uebungsdatensatz_auswahlrechts, F19Ab)
Die Argumente sind halt nicht gleich lang, weil F19Ab aus dem kompletten Datensatz ist und Uebungsdatens_auswahllinks & rechts ausgewählte Fälle.
Und dann kam der Fehleraufruf. Ich bin leider ziemlich neu im R-Milieu.


Moderator: Code in code-Tags gesetzt, bigben
bigben
Beiträge: 2771
Registriert: Mi Okt 12, 2016 9:09 am

Re: Kreuztabelle mit unterschiedlicher Länge von Argumenten

Beitrag von bigben »

Meinst Du vielleicht:

Code: Alles auswählen

Uebungsdatensatz_auswahllinks <- subset(Uebungsdatensatz, ((Uebungsdatensatz$F13Alter < 25) 
                                                      & (Uebungsdatensatz$fact_F9Sonntags_rec == "links")))
Uebungsdatensatz_auswahlrechts <- subset(Uebungsdatensatz, ((Uebungsdatensatz$F13Alter > 21) 
                                                           & (Uebungsdatensatz$fact_F9Sonntags_rec == "konservativ")))
table(Uebungsdatensatz_auswahllinks$F19Ab)
table(Uebungsdatensatz_auswahlrechts$F19Ab)
:?:

LG,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
communicationscience
Beiträge: 8
Registriert: Di Jan 19, 2021 3:11 pm

Re: Kreuztabelle mit unterschiedlicher Länge von Argumenten

Beitrag von communicationscience »

Jaa! Das hat geklappt!

Gibt es dann jetzt auch eine Möglichkeit, wie ich die Lösung:

Code: Alles auswählen

> table(uebung_auswahllinks$F19Ab)
                  Abi                    FH Hauptschule/ 8.Klasse          noch Schüler          noch Student 
                   22                     0                     2                     3                    44 
Realschule/ 10.Klasse                   Uni 
                    4                     6 
> table(uebung_auswahlrechts$F19Ab)

                  Abi                    FH Hauptschule/ 8.Klasse          noch Schüler          noch Student 
                    9                     4                     2                     0                    14 
Realschule/ 10.Klasse                   Uni 
                    8                     8 

in einer Kreuztabelle formatieren kann?

Beste Grüße und vielen lieben Dank!
Zuletzt geändert von jogo am Do Jan 21, 2021 7:18 pm, insgesamt 1-mal geändert.
Grund: Formatierung verbessert, siehe http://forum.r-statistik.de/viewtopic.php?f=20&t=29
bigben
Beiträge: 2771
Registriert: Mi Okt 12, 2016 9:09 am

Re: Kreuztabelle mit unterschiedlicher Länge von Argumenten

Beitrag von bigben »

Ich denke, ich würde in einem ersten Schritt alle die Personen herausschmeißen, die Deinen Altersregeln nicht entsprechen und dann auf diesem Datensatz aufbauend die Kreuztabelle in dieser Art aufbauen:

Code: Alles auswählen

table(Uebungsdatensatz$fact_F9Sonntags_rec, Uebungsdatensatz$F19b)
LG,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Antworten