Problem mit RECODE einer Variable bei DO-IF Befehl

Alles rund um SPSS Syntax und Programmierung.

Problem mit RECODE einer Variable bei DO-IF Befehl

Beitragvon Bolly » Do 11. Aug 2016, 13:38

Hallo Forianer,

ich habe gerade ein vermutlich nicht allzu komplexes Problem:

Ich habe die Variablen v_1 und v_2, die jeweils einen Wert von 1-5 annehmen können.

Ich möchte nun für den Fall dass v_1 den Wert 1 hat, dass eine v_2_neu geschrieben wird, die die Werte aus v_2 übernimmt. Hat v_1 allerdings den Wert 2, 3,4 oder 5, dann soll in v_2_neu der Wert 0 für den entsprechenden Fall eingetragen werden. Das ganze müsste ja irgendwie mit DO-IF ELSE-IF zu lösen sein.

Wenn ich schreibe:

DO IF v_1 =1.
RECODE v_2 (ELSE=COPY) INTO v_2_neu.
ELSE IF v_1 = 2 OR 3 OR 4 OR 5.
RECODE v_2 (MISSING=SYSMIS)(ELSE=0) INTO v_2_neu.
END IF.

Wird zwar in v_2_neu der richtige Wert für die Bedingungen "DO IF v_1 =1" und "ELSE IF v_1 = 2" eingeschrieben,allerdings werden für die v_1 Werte 3,4 und 5 keine Werte in v_2_neu vergeben. Der Fehler liegt dann wohl beim OR, allerdings stehe ich gerade etwas auf dem Schlauch, weshalb ich für Ratschläge dankbar wäre.

Bolly

Edit.:

Mit:

DO IF v_1 =1.
RECODE v_2 (ELSE=COPY) INTO v_2_neu.
ELSE IF v_1 > 1.
RECODE v_2 (MISSING=SYSMIS)(ELSE=0) INTO v_2_neu.
END IF.

scheint es zu funktionieren. Dennoch würde mich interessieren, wie ich hinter dem ELSE-IF nur bestimmte Werte auswählen kann?
Bolly
 
Beiträge: 2
Registriert: Do 14. Apr 2016, 16:32
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Zurück zu SPSS Syntax

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 6 Gäste

cron