Filter

Fragen und Diskussionen rund um die Arbeit mit SPSS. Für allgemeine Statistik-Themen, die nicht mit SPSS zusammenhängen, bitte das Statistik-Forum nutzen.
Antworten
pola
Beiträge: 3
Registriert: 09.01.2007, 19:11

Filter

Beitrag von pola »

Hallihallo

ich möchte einen Filter bauen, der für viele Variablen gelten soll, die ich aber nicht alle eintippen will. Also fällt ein if (var1=x) var2=y. flach. ich habe es jetzt mal mit der folgenden syntax versuchen wollen:
temp.
sel if (var1=x).
recode var2 to var3 (sysmis=y).
exe.
Aber irgendwie klappt das nicht so ganz, also sie wird zwar ausgeführt und es kommt auch keine Fehlermeldung, aber trotzdem ist der Filter nicht da.
Wie erwähnt, habe ich jetzt aber keine Lust, alle einzenln einzutippen.
Wer hat eine Idee, was ich da noch machen kann?

Viele liebe Grüße
Marco
Beiträge: 43
Registriert: 12.12.2006, 11:09

Beitrag von Marco »

hi,

Im Daten-Editor Fenster gibt es einen Button, der eine Tabellenspalte mit einem Fragezeichen darstellt. Wenn du darauf klickst kannst du mehrere Variablen auswählen und mit "Einfügen" in das Syntax-Fenster einfügen. Das erspart die wenigstens das eintippen von den Variablennamen...

Ansonsten verstehe ich leider nicht genau, was du vorhast... Über den sel if-Befehl musst du doch trotzdem alle Variablen eintippen, oder?
pola
Beiträge: 3
Registriert: 09.01.2007, 19:11

Beitrag von pola »

Hi,

ich erkläre mal kurz die Situation:
Es wurden Firmen über ihre Beschäftigten befragt.
Ich habe die Variablen V1_1, V1_2 und V1_3. Diese Variablen teilen die Beschäftigen in drei Gruppen ein. An diese Frage schließen sich drei Fragenkomplexe an, die sich jeweils auf V1_1 bis V1_3 beziehen (also der Fragenkomplex für V1_1 beinhaltet die Variablen V2_1 bis V25_10, der für V1_2 V26_1 bis V50_10 usw.).
Wenn also V1_1=0 ist, dann möchte ich die Fragen des Fragenkomplexes V2_1 bis V25_10 mit einer 77777 belegen. Ich habe aber keine Lust nun alle diese Variablen einzutippen und überlege, ob es da nicht eine andere Methode gibt, in der ich in der Sytax nur einen Befehl eingeben muss.

Es geht mir ja auch nicht um den sel if -Befehl oder so, sondern udarum, ob ich das nicht über einen recode oder compute oder so was machen kann, wo man die Variablen niciht einzeln eintippen muss, sonder sie in der Form "V2_1 to V25_10" auswählen kann.

So, ich hoffe, das war jetzt nicht zu wirr.
Vlg
Marco
Beiträge: 43
Registriert: 12.12.2006, 11:09

Beitrag von Marco »

Also, wenn ich dich jetzt richtig verstanden habe, würde ich es mit folgender Syntax versuchen:

Code: Alles auswählen

DO IF (v1_1 EQ 0).
+ DO REPEAT #varx = v2_1 TO v25_10.
+  COMPUTE #varx = 77777.
+ END REPEAT.
END IF.
Die DO-IF-Schleife wählt nur die Fälle mit v1_1 = 0 aus, die darin eingebundene DO REPEAT-Schleife behandelt alle angegebenen Variablen wie die temporäre Variable "#varx", das heißt, sie ändert sie in 77777.
Wenn du so eine Schleife für jede deiner drei Variablen erstellst und ich keinen Fehler in der Syntax hab, müsste es eigentlich funktionieren.....
pola
Beiträge: 3
Registriert: 09.01.2007, 19:11

Beitrag von pola »

Huhu

vielen Dank, hat ganz hervorragend funktioniert (außer dem fehlenden exe. am ende) 8)

Vlg
Marco
Beiträge: 43
Registriert: 12.12.2006, 11:09

Beitrag von Marco »

Ach ja, das exe. Da hätt ich dran denken sollen. Ist schließlich nicht das erste mal, dass ichs vergess... :D
Anzeige:Statistik und SPSS: Die besten Bücher
Als Buch oder E-Book - Jetzt bestellen
spss datenanalyse
SPSS - Moderne Datenanalyse - Jetzt bestellen!
statistik datenanalyse
Statistik - Der Weg zur Datenanalyse - Jetzt bestellen!
Antworten