Nur die initiale if-Anweisung wird berechnet - der ELSE-Teil wird ignoriert. Kann jemand erklären warum? Danke vielmals.DO IF, ELSE: Sonst wird nicht berechnet
DATASET ACTIVATE DataSet1. DO IF ((A1_SCN2_PR1_UE = 0 & A1_SCN3_PR1_UE = 0 & A1_SCN4_PR1_UE = 0 & A1_SCN5_PR1_UE = 0) | (A2_SCN2_PR1_UE = 0 & A2_SCN3_PR1_UE = 0 & A2_SCN4_PR1_UE = 0 & A2_SCN5_PR1_UE = 0) | (A3_SCN2_PR1_UE = 0 & A3_SCN3_PR1_UE = 0 & A3_SCN4_PR1_UE = 0 & A3_SCN5_PR1_UE = 0)). Compute FM_zero = 1. ELSE. Compute FM_zero = 0. End IF. EXECUTE.
Code sieht gut aus. Wahrscheinlich sind es entweder Ihre Daten/Variablen oder die logische Operation, die fehlerhaft ist. –
Sind alle Ihre Variablen definiert? Dieser Artikel von IBM: [DO IF, ELSE mit COMPUTE lassen einige Variablenwerte fehlen] (http://www-01.ibm.com/support/docview.wss?uid=swg21476060) erklärt den Fall des "Weglassens" von "Compute" 'Berechnungen, wenn einige Variablen in booleschen Ausdruck in DO IF undefiniert sind. – CiaPan
Ich weiß, sie sind, weil ich sie aus SPSS Punkt ausgewählt, klicken Sie auf, Menü hinzufügen. Die Lösung, die ich gefunden habe, ist, FM_zero = 0 zunächst zu setzen. Es scheint, dass beim Erstellen der Variablen und Setzen der Nicht-1-Werte auf fehlende, wird es nicht akzeptieren "ELSE", um sie zu ändern - dh es scheint, dass ELSE COMPUTE FM_zero = O. müsste sein .. .Sysmis (FM_zero) = 0. Irgendeine Idee warum ?? – Yishoov