IBM SPSS Statistics Ergebnisse in verschiedene MS Excel-Tabellenblätter schreiben

Immer wieder wird in IBM SPSS Statistics-Seminaren gefragt, ob Ergebnisse in verschiedene MS Excel-Tabellenblätter geschrieben werden können. Dies ist mittels OUTPUT EXPORT Befehl relativ einfach möglich. Die Umsetzung in Syntax ermöglicht eine gewisse Automatisierung und unterstützt eine Ergebnissicherung.

Zuerst sollte ein Ordner temp eingerichtet werden, in dem die Ergebnisse gespeichert werden. Das Softwarepaket IBM SPSS Statistics legt den Ordner NICHT an, wenn dieser nicht vorhanden ist – das Beispiel hier nutzt den Ordner im Verzeichnis E:\temp\

Zuerst wird ein Testdatensatz erzeugt:

*Diese Syntax kann so in ein Syntaxfenster in IBM SPSS Statistics® eingefügt werden.

** Build data set.
NEW FILE.

* Enclose data definition and transformation commands.
INPUT PROGRAM.
+   LOOP #I = 1 TO 1000.
+     COMPUTE Normal = RV.NORMAL(100,20).
+     COMPUTE POISSON = RV.POISSON(100).
+     COMPUTE Geometric = RV.GEOM(.667).
+     COMPUTE Geometric2 = RV.GEOM(.5).
+     COMPUTE Binomial = RV.BINOM(1, .5).
+     COMPUTE Binomial2 = RV.BINOM(1, .25).
+     END CASE.
+   END LOOP.
+   END FILE.
END INPUT PROGRAM.
EXECUTE.

 

Häufigkeitsanalysen, Grafiken etc. werden jetzt in verschiedene MS Excel-Tabellenblätter geschrieben. Der Befehl OUTPUT EXPORT ermöglicht bei Speicherung in eine xls-, xlsx- oder xlsm-Datei drei verschiedene Möglichkeiten:

CREATEFILE – Erzeugt eine neue MS Excel-Datei

CREATESHEET – Erzeugt ein neues Tabellenblatt in einer existierenden MS Excel-Datei

MODIFYSHEET – Ermöglicht die Modifikation eines bestehenden Tabellenblatts in einer existierenden MS Excel-Datei

Zuerst wird noch ein wenig Syntax benötigt, damit keine Syntax-Befehle im Output (und dann auch in der Excel-Datei) landen und dass die Befehle sofort ausgeführt werden:

* Dafür sorgen, dass der nachfolgende Befehl sofort angewendet wird.
PRESERVE.
* Abschalten des anzeigens der Syntax. Diese erscheint sonst in den Excel-Tabellen!.
SET PRINTBACK OFF.

 

CREATEFILE

Anlage einer neuen MS Excel-Datei mit CREATEFILE, in die eine deskriptive Analyse der Variablen Normal geschrieben wird:

** CREATEFILE.
* Öffnen eines neuen Ausfgabefensters.
OUTPUT NEW.
* Durchführen der Analyse.
FREQUENCIES VARIABLES=Geometric.

*Exportieren des Analyse-Ergebnisses
OUTPUT EXPORT
 /CONTENTS EXPORT=VISIBLE
 /XLSX DOCUMENTFILE='E:\temp\Test1'
 OPERATION=CREATEFILE
 SHEET='FREQ_Geometric'.

 

Dies liefert die folgende MS Excel-Datei:

 

CREATESHEET

Mittels CREATESHEET kann in einer bestehenden MS Excel-Datei ein neues Tabellenblatt angelegt in die Ergebnisse in dieses geschrieben werden:

** CREATESHEET.
* Open new output window for new analyses.
OUTPUT NEW.
* Run analysis.
DESCRIPTIVES VARIABLES=Normal.

OUTPUT EXPORT
/CONTENTS EXPORT=VISIBLE
/XLSX DOCUMENTFILE='E:\temp\Test1'
OPERATION=CREATESHEET
SHEET='Descriptives'.

 

Die bestehende MS Excel-Datei Test1.xlsx wird nun um ein neues Tabellenblatt erweitert:

 

MODIFYSHEET

Mittels Befehl MODIFYSHEET kann ein bestehendes Tabellenblatt modifiziert werden. Das Beispiel zeigt eine Ergänzung des bestehenden Tabellenblatts FREQ_Geometric um Häufigkeitsanalysen für die Variable Geometric2:

 

** MODIFYSHEET.
OUTPUT NEW.

FREQUENCIES VARIABLES=Geometric2.

OUTPUT EXPORT
/CONTENTS EXPORT=VISIBLE
/XLSX DOCUMENTFILE='E:\temp\Test1'
OPERATION=MODIFYSHEET
SHEET='FREQ_Geometric'
LOCATION=LASTROW
NOTESCAPTIONS =NO.

OUTPUT CLOSE ALL.

 

Der Befehl OUTPUT CLOSE ALL sollte alle noch offenen Ausgabefenster schließen.

 Autor: Dr. Guido Möser