Variablen berechnen

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
karantäne
Beiträge: 3
Registriert: 04.05.2008, 02:29

Variablen berechnen

Beitrag von karantäne »

Moin zusammen!

Bin neu im Universum "Statistik mit SPSS" unterwegs - und hier meine Frage:

Habe drei Variablen "Größe_1", "Größe_2" und "Größe_3", die je einen Wert zwischen 0 und 100 annehmen können. Desweiteren gibt es eine Variable "Typ", deren Wert sich aus den erstgenannten Variablen berechnen soll nach folgendem Schema:

Code: Alles auswählen

Falls kein Wert  von "Größe_1", "Größe_2" und "Größe_3" >= 50, dann "Typ"=0.
Falls ein  Wert  von "Größe_1", "Größe_2" und "Größe_3" >= 50, dann "Typ"=1.
Falls zwei Werte von "Größe_1", "Größe_2" und "Größe_3" >= 50, dann "Typ"=2.
Falls alle Werte von "Größe_1", "Größe_2" und "Größe_3" >= 50, dann "Typ"=3.
Mit "Transformieren -> Variable berechnen..." kann ich immer nur eine Berechnung durchführen. Kann daher für o.g. Bedingungne eine Art Makro erzeugen? Wenn ja, wie und wo finde ich die entsprechenden Dialogfelder und wie müsste der richtige Code aussehen?
Gibt es Makros, die automatisch ausgeführt werden, also gleich bei Eingabe von "Größe_1/2/3" den Wert für "Typ" berechnen, oder muss ich das Makro nach Hinzufügen neuer Datensätze immer mal wieder von Hand ausführen?

Vielen Dank für eure Antwort(en),
\karantäne
Elwood
Beiträge: 18
Registriert: 17.02.2008, 15:45

Beitrag von Elwood »

Moin,

keine Garantie, dass es läuft. Darüber hinaus geht es sicher auch einfacher. Bin kein Profi, kämpfe aber gerade mit ähnlichen Problemen.

Als erstes über "Datei" -> "Neu" -> "Syntax" ein Syntaxfenster öffnen.
Darin gibts Du folgendes ein:

Code: Alles auswählen

IF (Größe_1 >= 50) Variable1 = 1 .
EXECUTE .
IF (Größe_2 >= 50) Variable2 = 1 .
EXECUTE .
IF (Größe_3 >= 50) Variable3 = 1 .
EXECUTE .
IF (Größe_1 < 50) Variable1 = 0 .
EXECUTE .
IF (Größe_2 < 50) Variable2 = 0 .
EXECUTE .
IF (Größe_3 < 50) Variable3 = 0 .
EXECUTE .

COMPUTE  Variable_tot = SUM(Variable1,Variable2,Variable3) .
EXECUTE .
IF (Variable_tot = 0) Typ = 0 .
EXECUTE .
IF (Variable_tot = 1) Typ = 1 .
EXECUTE .
IF (Variable_tot = 2) Typ = 2 .
EXECUTE .
IF (Variable_tot = 3) Typ = 3 . 
EXECUTE .
Wenn Du fertig bist, alles markieren und dann rechte Maustaste -> "Aktuellen Befehl ausführen" drücken. (Anm.: Kannst natürlich in der Syntax statt Variable1, Variable2 etc. beliebige Namen eingeben.)
Die Ergebnisse findest Du dann in der letzten Spalte der Datenansicht!
Die Häufigkeiten der einzelnen Typen kannst Du natürlich dann wie gewohnt berechnen.
Die Syntax würde ich erst nach Eingabe aller Daten drüberlaufen lassen.

Gib doch mal Rückmeldung.

Gruß!
karantäne
Beiträge: 3
Registriert: 04.05.2008, 02:29

Beitrag von karantäne »

Danke Elwood!

So, jetzt aber - war die letzten Tage unterwegs:
Das funktionierte auf Anhieb genau so, wie ich mir das vorgestellt hatte! Die Ergebnisvariable 'Variable_tot' habe ich gegen die Variable 'Typ' ersetzt, in die das Ergebnis direkt zurückgegeben wird. Ein EXECUTE am Ende der Ausführung reicht scheinbar aus.
Jetzt suche ich in der Hilfe noch nach einem Befehl, um die Hilfsvariablen wieder zu löschen. Oder ist vielleicht der Einsatz sog. temporärer Variablen hilfreich? Hab das allerdings in der Hilfe noch nicht ganz verstanden...

\karantäne
karantäne
Beiträge: 3
Registriert: 04.05.2008, 02:29

Beitrag von karantäne »

...und auch das Problem mit den Variablen hätte sich schnell gelöst.
Der Vollständigkeit halber hier also der finale Code:

Code: Alles auswählen

COMPUTE Variable1 = 0 .
COMPUTE Variable2 = 0 .
COMPUTE Variable3 = 0 .

IF (Größe_1 >= 50) Variable1 = 1 .
IF (Größe_2 >= 50) Variable2 = 1 .
IF (Größe_3 >= 50) Variable3 = 1 .

COMPUTE  Type = SUM(Variable1, Variable2, Variable3) .
EXECUTE .

DELETE VARIABLES Variable1 TO Variable3 .
Vielleicht hilft's ja auch anderen hier - oder jemand sieht einen noch einfacheren Weg zur Lösung :wink:

\karantäne
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