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
Schleife in SPSS, die Variablennummern hochzählt
-
- Beiträge: 67
- Registriert: 17.01.2007, 18:15
-
- Moderator
- Beiträge: 304
- Registriert: 17.01.2006, 19:20
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:
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...
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
Literatur?
Bücher zum Thema SPSS und Statistik (Amazon)
Bücher zum Thema SPSS und Statistik (Amazon)
-
- Beiträge: 67
- Registriert: 17.01.2007, 18:15
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
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