Hallo zusammen,
ich verzweifel bereits seit zwei Tagen an einem Problem und wende mich daher an euch:
Mein Ziel ist die Dichtomisierung einer Variable.
Meine Variable (v104) besteht aus folgenden Werten:
1=Vollzeit
2=Teilzeit
3=weniger als Teilzeit
4=Familienmitglied helfen
5=nicht beschäftigt
6=Student, in Ausbildung
7=in Rente
8=Hausfrau
9=nicht beschäftigungsfähig
10=anderes
11=keine Antwort
Zudem habe ich eine zweite Variable, die die Selbstständigkeit misst mit
1=selbstständig
2=beschäftigt
Ich möchte nun fünf Dummyvariablen bilden, welche die Selbstständigen, die Rentner, die Arbeitslosen und die Hausfrauen gegenüber den abhängig Beschäftigten als Referenzkategorie (=Personen, die in Vollzeit, Teilzeit, weniger als Teilzeit arbeiten oder bei einem Familienmitglied helfen (vgl. Werte der ersten Variable) herausheben.
Mein Ansatz:
Recode v104 (1=0) (2=0) (3=0) (4=0) (else=copy) Into dummy_arbeit.
fre dummy_arbeit.
fre v104.
Damit hätte ich allerdings nur die abhängig Beschäftigten als Referenzkategorie bestimmt. Aber ich kann mir einfach nicht erklären, wie es dann weitergehen soll.
Ich wäre sehr dankbar für eine Hilfestellung/Lösung meines Problems
Dichotomisierung einer Variable
-
- Beiträge: 2391
- Registriert: 06.02.2011, 19:58
re
es gibt viele Möglichkeiten.Mein Ziel ist die Dichtomisierung einer Variable.
wenn du mit recode arbeiten willst, dann geht das so:
Code: Alles auswählen
RECODE v_01 (1=1) (ELSE=0) INTO v_01_1.
RECODE v_01 (2=1) (ELSE=0) INTO v_01_2.
RECODE v_01 (3=1) (ELSE=0) INTO v_01_3.
*usw.
EXE.
Gruß
drfg2008
-
- Beiträge: 1733
- Registriert: 11.03.2010, 22:28
Re: Dichotomisierung einer Variable
Das wären 4 dummies, nicht 5. Eine Referenzkategorie bekommt keine eigene dummyvariable. Du musst demnach berechnen IF(v104=6) dummy_student = 1 . Entsprechend für die anderen 3 Gruppen je eine Variable. Danach RECODE der 4 Variablen "Missing=0" . Dann wieder alle Fälle von 0 auf missing setzen, die bei v104 die 9, 10 oder 11 enthalten und auch nicht selbständig sind, weil die weder Referenz noch eine interessierende Gruppe sind.Ich möchte nun fünf Dummyvariablen bilden, welche die Selbstständigen, die Rentner, die Arbeitslosen und die Hausfrauen gegenüber den abhängig Beschäftigten als Referenzkategorie
-
- Beiträge: 16
- Registriert: 26.02.2011, 16:00
Vielen Dank für die schnelle Rückmeldung.
Ich habe mich daher mal für den Lösungsvorschlag vom Generalist gehalten. Für die Dummy Variable Rentner hätte ich dann folgende Syntax:
IF (v104 = 7) dummy_rente=1.
EXECUTE.
RECODE dummy_rente (MISSING=0).
EXECUTE.
DO IF (v104 = 0 | v104 = 5 | v104 = 6 | v104 = 8 | v104 = 9 | v104 = 10 |v104=99).
RECODE dummy_rente (0=SYSMIS).
END IF.
EXECUTE.
Bin leider noch immer nicht sicher, ob ich alles richtig verstanden habe und meine Syntay stimmt?! Ist es zulässig jene Gruppen, die NICHT Referenzgruppe sind und auch nicht interessieren als Missings zu definieren? Die Variable enthält dann ja eine recht große Anzahl an missings
Zudem weiß ich leider nicht, wie ich mit den Selbstständigen umgehen soll. Diese sind in Variable v104 ja nicht gesondert aufgeführt. Ich müsste also hier irgendwie zwei Variablen miteinander "verbinden" und daraus die dummy_variable erstellen oder?
Vielen Dank!
Wenn ich das richtig verstehe, wäre in diesem Fall allerdings nicht nur die Erwerbstätigen (Items 1 bis 4) sondern ebenso die nicht interessierenden Gruppen oder?drfg2008 hat geschrieben:es gibt viele Möglichkeiten.
wenn du mit recode arbeiten willst, dann geht das so:
Code: Alles auswählen
RECODE v_01 (1=1) (ELSE=0) INTO v_01_1. RECODE v_01 (2=1) (ELSE=0) INTO v_01_2. RECODE v_01 (3=1) (ELSE=0) INTO v_01_3. EXE.
Ich habe mich daher mal für den Lösungsvorschlag vom Generalist gehalten. Für die Dummy Variable Rentner hätte ich dann folgende Syntax:
IF (v104 = 7) dummy_rente=1.
EXECUTE.
RECODE dummy_rente (MISSING=0).
EXECUTE.
DO IF (v104 = 0 | v104 = 5 | v104 = 6 | v104 = 8 | v104 = 9 | v104 = 10 |v104=99).
RECODE dummy_rente (0=SYSMIS).
END IF.
EXECUTE.
Bin leider noch immer nicht sicher, ob ich alles richtig verstanden habe und meine Syntay stimmt?! Ist es zulässig jene Gruppen, die NICHT Referenzgruppe sind und auch nicht interessieren als Missings zu definieren? Die Variable enthält dann ja eine recht große Anzahl an missings
Zudem weiß ich leider nicht, wie ich mit den Selbstständigen umgehen soll. Diese sind in Variable v104 ja nicht gesondert aufgeführt. Ich müsste also hier irgendwie zwei Variablen miteinander "verbinden" und daraus die dummy_variable erstellen oder?
Vielen Dank!
-
- Beiträge: 16
- Registriert: 26.02.2011, 16:00
Leider muss bei meiner Dichotomiserung tatsächlich etwas falsch gelaufen sein, denn in der Regression schmeißt SPSS die Dummy-Variablen entweder aus der Analyse oder gibt folgende Fehlermeldung:
Text: selbstständig Befehl: REGRESSION
Ein undefinierter Variablenname oder eine Arbeits- oder Systemvariable wurde in einer Variablenliste angegeben, die nur Standardvariablen zulässt. Überprüfen Sie, ob der Name richtig geschrieben wurde und ob die Variable vorhanden ist.
Die Ausführung dieses Befehls wurde unterbrochen.
Weiß wirklich keiner, wo der Fehler in meiner Syntax liegt bzw. was ich falsch mache?
Text: selbstständig Befehl: REGRESSION
Ein undefinierter Variablenname oder eine Arbeits- oder Systemvariable wurde in einer Variablenliste angegeben, die nur Standardvariablen zulässt. Überprüfen Sie, ob der Name richtig geschrieben wurde und ob die Variable vorhanden ist.
Die Ausführung dieses Befehls wurde unterbrochen.
Weiß wirklich keiner, wo der Fehler in meiner Syntax liegt bzw. was ich falsch mache?
-
- Beiträge: 27
- Registriert: 21.05.2011, 14:54
Re: Dichotomisierung einer Variable
Hallo mika,
die Fehlermeldung von SPSS finde ich ziemlich misteriös. Irgendwie macht das auf mich den Eindruck, als ob SPSS mit den Variablennamen Deiner Dummyvariablen nicht zurechtkommt, aus welchem Grund auch immer. Nach Bühl 2006:33 sind Unterstriche in Variablennamen erlaubt, und andere Besonderheiten kann ich nicht erkennen. Versuch trotzdem mal statt dummy_rente so etwas wie rente.01 oder rente01. [1] Spätestens die letzte Möglichkeit müsste eigentlich funktionieren.
Grüße
jake2042
[1]
Der Punkt hinter rente01 ist das Satzendezeichen. Bitte nicht in den Variablennamen übernehmen. Bühl 2006:33:
Bühl, Achim, (10)2006: SPSS. Einführung in die moderne Datenanalyse. München: Pearson
die Fehlermeldung von SPSS finde ich ziemlich misteriös. Irgendwie macht das auf mich den Eindruck, als ob SPSS mit den Variablennamen Deiner Dummyvariablen nicht zurechtkommt, aus welchem Grund auch immer. Nach Bühl 2006:33 sind Unterstriche in Variablennamen erlaubt, und andere Besonderheiten kann ich nicht erkennen. Versuch trotzdem mal statt dummy_rente so etwas wie rente.01 oder rente01. [1] Spätestens die letzte Möglichkeit müsste eigentlich funktionieren.
Grüße
jake2042
[1]
Der Punkt hinter rente01 ist das Satzendezeichen. Bitte nicht in den Variablennamen übernehmen. Bühl 2006:33:
Literatur»Das letzte Zeichen eines Variablennamens darf kein Punkt und sollte kein _ (underscore) sein, um Konflikte mit speziellen Variablen, die von SPSS-Prozeduren angelegt werden, zu vermeiden.«
Bühl, Achim, (10)2006: SPSS. Einführung in die moderne Datenanalyse. München: Pearson