Schleife in SPSS, die Variablennummern hochzählt

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
Volker
Beiträge: 67
Registriert: 17.01.2007, 18:15

Schleife in SPSS, die Variablennummern hochzählt

Beitrag von Volker »

Hallo zusammen,

ich habe mal eine Frage zur Konstruktion von Schleifen in SPSS.

Ich habe das Problem, dass ich mehrere Itembatterien habe, die mittels mehrerer Gruppierungsfragen ausgewertet werden sollen.

Beispiel:
Filterfrage: "Nutzen Sie Produkt A?" Ja - Nein (als Dummy codiert)
Bewertung: "Was halten Sie von Produkt A?" (1-5 Ratingskala)

Jetzt interessiert mich:
-wie wurde das Produkt insgesamt beurteilt?
-Wie haben die Nutzer und die Nichtnutzer das Produkt beurteilt?

Das könnte man einfach mit einer Kreuztabelle machen. Das Problem ist nur, ich muss mehrere hundert solcher Auswertungen. Ich kann auch nicht eine Gruppenvariable für mehrer Ratingskalen verwenden, sondern muss immer einzelen zuordnen. Das ist eine Heidenarbeit.

Da die einzelnen Fragen in der Itembatterie mit einer Indexnummer versehen sind, könnte hier eine Schleife weiterhelfen.

Codierbeispiel:

ID F1_1_n F1_1 F1_2_n F1_2
1........0.......4........1.........3
2........1.......3........0.........2
3........1.......5........0.........3
.
.
.
n........0.......3........1.........5


F1_1_n ist die Nutzerabfrage "nutzen Sie Produkt A?"
F1_2_n ist die Nutzerabfrage "nutzen Sie Produkt B?"
usw.

Entsprechend bedeutet:
F1_1 Bewertung von Produkt A
F1_2 Bewertung von Produkt B
usw.

mit cro F1_1_n by F1_1 kann man eine Kreuztabelle erstellen.
mit cro F1_2_n by F1_2 ebenfalls.
usw.

Bei dieser Befehlssyntax ändert sich jedesmal nur die Indexnummer.

Praktisch wäre es, wenn man mit SPSS eine Schleife programmieren könnte, die in der Variable die Indexnummer hochzählt, so dass man die Syntax nicht immer von Hand ändern muss. Gibt es so eine Möglichkeit?

Über jede, auch gerne originelle, Antworte freue ich mich garantiert.

Gruß
Volker
guido
Moderator
Beiträge: 304
Registriert: 17.01.2006, 19:20

Beitrag von guido »

Hallo Volker,

Würde Dir hier gerne weiterhelfen, jedoch übersteigt dies meine Syntax Kenntnisse...

In einer Programmiersprache wie PHP könnte man Dein Problem u.a. folgendermaßen lösen:

Code: Alles auswählen

$F1_1 ='Hund';
$F1_2='Katze';
$zaehler=0;
schleife anfang:
$zaehler++;
echo $('F1_'.$zaehler);
schleife ende

Ergebnis:
Hund
Katze
Du kannst Dir also einen Variablennamen mit Hilfe der Klammer "zusammenbauen". Ob Dir das wirklich weiterhilft und Du das auf die Syntax übertragen kannst, dürfte wohl fraglich sein...
Volker
Beiträge: 67
Registriert: 17.01.2007, 18:15

Beitrag von Volker »

Hallo Guido,

danke für deinen Tipp. Da ich die Auswertung bis Montag brauche, habe ich mir (wieder mal) mit meinen VBA-Kenntnissen beholfen. Ich habe mir in Word eine kleines Makro geschrieben und damit ein SetUp für SPSS in Word generieren lassen. Das sind glatte 19 DIN-A-4 Seiten geworden. Im Prinzip bin ich also so vorgegangen, wie du auch empfohlen hast: einfach extern basteln. :-)


Auch wenn mein aktuelles Problem dadurch gelöst ist, bleibt das prinzipielle Problem trotzdem noch bestehen. Wie kann man in SPSS Schleifen programmieren, in denen lediglich Zähler in Variablennamen ausgetauscht werden? Schleifen und Makros für Datentransformationen kann man mit SPSS ja schließlich auch Programmieren. Dass man für so eine einfache Aufgabe auf ein externes Programm ausweichen muss, ist unbefriedigend.

Ich denke, dass ist ein Problem, das weiterverfolgt werden sollte. Falls irgendjemand hier eine Lösung finden sollte, bitte posten. Da kann man vielen SPSS-Nutzern etwas Gutes tun. :-)

Danke nochmal und viele Grüße
Volker
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