Suche |  Kontakt |  Druckversion |  Glossar |  English   |  Impressum 


Universität zu Köln

Informationen zur Statistik




Datenaustausch zwischen SAS, SPSS, BMDP und SYSTAT


Wandlung einer SAS-Datei in eine SPSS-Datei
Wandlung einer SPSS-Datei in eine SAS-Datei
Wandlung einer BMDP-Datei in eine SAS- oder SPSS-Datei
Wandlung einer SPSS- oder BMDP-Datei in eine SYSTAT-Datei
Wandlung einer SYSTAT-Datei in eine BMDP-Datei
Wandlung einer SYSTAT-Datei in eine SPSS-Datei


Es gibt mittlerweile eine große Anzahl von Statistiksystemen, aber SPSS und SAS haben sich sowohl weltweit als auch an der Uni Köln als die meistbenutzten etabliert. Fast jedes System hat sein eigenes Datenformat in Form einer sogenannten Systemdatei. Eine Konvertierung des Datenformats von einem System zu einem anderen ist daher ein häufig vorkommendes Problem, zum einen, wenn man an die Grenzen des einen Programms gestoßen ist und ein Verfahren in einem anderen Programm anwenden möchte, zum anderen, wenn Daten im Format eines Systems geliefert worden sind, man aber ein anderes, mit dem man vertraut ist, anwenden will.

Nachfolgend wird die Umwandlung des Datenformats für die wichtigsten Programmpakete beschrieben. Leider werden aber bei allen hier vorgestellten "Standard-Datenaustauschverfahren" keine Werteetiketten (Value Labels) übertragen, sondern lediglich die Datenwerte und Variablennamen, in einigen Fällen auch die Fallkennungen. Außer den "wichtigsten" Systemen SAS und SPSS werden hier auch noch BMDP und SYSTAT kurz behandelt.

Ein universellen Programm zur Formatumwandlung ist DBMS/COPY, das in der derzeitigen Version 5 etwa 80 verschiedene Datenformate unterstützt. Am RRZK steht es unter DOS in den PC-Pools des RRZK-B zur Verfügung, unter Windows 3.1 in der Benutzerberatung, RRZKB Raum 107. Nähere Informationen zum Program sind in WWW unter der Adresse

	http://www.uni-koeln.de/themen/Statistik/dbmscopy/

abrufbar. Obwohl DBMS/COPY regelmäßig in neuen Programversionen erscheint, hinkt es bezüglich mancher Datenformate einige Versionen hinterher, so z.B. bei SAS und Excel. Dagegen funktioniert z.B. der Austausch zwischen SPSS für Windows oder SPSS/PC+ und BMDP problemlos. Deswegen werden im folgenden Datenaustauschmöglichkeiten vorgestellt, die ohne Zuhilfenahme anderer Programme auskommen, zumal DBMS/COPY auch auf PCs außerhalb des RRZK an dieser Universität selten vorhanden sein wird.

Wandlung einer SAS-Datei in eine SPSS-Datei

In beiden Systemen müssen dazu Kommandos eingegeben werden, da für diese Wandlung keine Menüsteuerung vorgesehen ist.

1.Lesen der SAS-Dateien in SAS:
Dazu ist das Verzeichnis, das die SAS-Datei(en) enthält, als Bibliothek zu deklarieren, also z.B.

LIBNAME EIN `C:\SASFILES` ;
RUN;
Darin ist EIN ein frei wählbarer Name und \SASFILES das Verzeichnis, das die SAS-Datei(en) enthält.

2.Erstellen der SAS-Export-Dateien in SAS:
Die zu erstellende Ausgabedatei muß ebenfalls als Bibliothek deklariert werden, wobei der engine-Typ XPORT anzugeben ist, damit sie im Export-Format erstellt wird. Anschließend wird mit COPY die Datei erzeugt, also z.B.:

LIBNAME SPSS XPORT `C:\SASFILES\XDRUG.DAT`;
PROC COPY IN=EIN OUT=SPSS ; SELECT DRUG;
RUN;
Hierbei ist SPSS der frei wählbare Bibliotheksname und XDRUG.DAT der Name der zu erstellenden SAS-Export-Datei. Diese wird hier in dasselbe Verzeichnis geschrieben, in dem sich auch die SAS-Eingabedatei befindet. DRUG ist der Name der SAS-Datei, für die natürlich kein Filetyp spezifiziert werden darf. Die Anweisungen sind gegebenenfalls für mehrere Dateien zu wiederholen.

3.Lesen der Datei in SPSS:

GET SAS DATA=`C:\SASFILES\XDRUG.DAT` DSET (DRUG).
XDRUG.DAT und DRUG sind darin die vorher festgelegten Dateinamen.

Wandlung einer SPSS-Datei in eine SAS-Datei

1.Lesen der SPSS-Datei und Erstellen der portablen Export-Datei in SPSS:
Das Lesen der SPSS-Datei kann über die Menüs erfolgen:
File ->Open ->Data bzw. Datei -> Öffnen ->Daten.
Ebenfalls über die Menüs ist dann eine portable Exportdatei (.POR) zu erzeugen, z.B. MYDAT.POR im Verzeichnis C:\SPSS\.

2.Lesen der SPSS-Exportdatei in SAS:
Dazu muß die im ersten Schritt erzeugte SPSS-Exportdatei als Bibliothek mit dem engine-Typ SPSS deklariert werden. Danach steht sie für die Auswertung zu Verfügung also, z.B.:

LIBNAME SPSSEIN SPSS `C:\SPSS\MYDAT.POR`;
PROC CONTENTS DATA=SPSSEIN.MYDAT POSITION;
RUN;
wobei SPSSEIN der frei wählbare Bibliotheksname ist.

Wandlung einer BMDP-Datei in eine SAS- oder SPSS-Datei

BMDP 7.0 (unter DOS) bietet im Eingangsmenü eine Import/Export-Möglichkeit. Diese arbeitet leider nicht immer zuverlässig. Eine sicherere Variante bietet das Programm BMDP-DM. Im SAVE-Paragraph kann als Ausgabeformat SAS oder SPSS angegeben werden. Die dadurch erzeugten Dateien sind im portablen SAS-Export- bzw. SPSS-Export-Format erstellt. Die Anweisungen dazu lauten z.B.
READ SFILE=`\MYFILES\DRUG.SAV`. FILE=IN. CODE=APRIL./
SAVE SFILE=`\MYFILES\DRUG.POR`. FILE=IN. TYPE=SPSS./
END
Hierbei wird eine BMDP-Datei DRUG.SAV mit dem Code APRIL eingelesen und daraus eine SPSS-Exportdatei im gleichen Verzeichnis MYFILES erzeugt. Analog wird mit TYPE=SAS eine SAS-Exportdatei generiert, die wie oben beschrieben in SAS eingelesen werden kann.

Doch Vorsicht: Damit SPSS die Variablennamen richtig verarbeiten kann, müssen diese in BMDP alle in Großbuchstaben geschrieben sein! Daher empfiehlt sich für den Transfer von BMDP nach SPSS die folgende Alternative.

Für den Fall, daß in SPSS eine BMDP-Datei verarbeitet werden soll, bietet SPSS eine Importmöglichkeit mit der Prozedur GET BMDP, z.B.

GET BMDP FILE=`\MYFILES\DRUG.SAV`/CODE=APRIL.
Auch SAS bietet an, BMDP-Dateien direkt zu verarbeiten. Die Methode ist dieselbe wie bei dem oben beschriebenen Import von SPSS-Dateien. Als engine-Typ ist lediglich BMDP anzugeben, also z.B.
LIBNAME BMDPEIN BMDP `C:\MYFILES\DRUG.SAV`;
PROC PRINT DATA=BMDPEIN._FIRST_;
RUN;

Wandlung einer SPSS- oder BMDP-Datei in eine SYSTAT-Datei

SYSTAT bietet über die Menüs (File->Open->Data) die Möglichkeit, sowohl SPSS/Win-Dateien als auch BMDP-Dateien (.SAV und .POR) zu importieren.

Wandlung einer SYSTAT-Datei in eine BMDP-Datei

SYSTAT kann über das Menü File -> Save As BMDP-Dateien sowohl binär (.SAV) als auch im portablen Format (.POR) erzeugen.

Wandlung einer SYSTAT-Datei in eine SPSS-Datei

Einen direkten Weg hierfür gibt es nicht. Neben der Möglichkeit mithilfe von DBMS/COPY (s.o.) bietet sich an, in SYSTAT eine BMDP-Datei (.SAV) zu erzeugen, die dann wie oben beschrieben in SPSS mit GET BMDP importiert werden kann.
Haiko Lüpsen
Letzte Änderung: 05.12.2008