Wie kann ich Lesen Sie ein SAS-dataset?
Habe ich eine Menge von Dateien im SAS-format vorliegen, und ich möchte in der Lage sein, Sie zu Lesen, in Programme außerhalb des SAS. Ich habe nichts außer der base SAS-system installiert. Ich könnte manuell konvertieren jeden, aber ich möchte einen Weg, um es automatisch zu tun.
- Welche Programme/Formate würden Sie gerne Lesen? Welche Programmiersprache würden Sie arbeiten?
- Ich bin mit Python. Ich wollte nicht angeben, ein Programm oder ein format, weil ich nicht wollen, beschränken Sie die Antworten; wenn es einen Weg gibt, die Daten zu Lesen durch eine DLL oder API, ich bin mir sicher, dass ich herausfinden kann, wie Sie es nennen. Aber ich finde keine Möglichkeit, es zu tun, ohne die Lizenzierung zusätzliche Programme von SAS.
- Würde das schreiben einer SAS-makro zum umwandeln von jeder zählen als eine automatische Lösung?
- Nicht wirklich. Ich möchte in der Lage sein zu Lesen SAS-dataset ich begegne, nicht konvertieren Sie Sie in stapeln, bevor ich mit Ihnen arbeiten.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Müssen Sie eine SAS-Sitzung zu handeln, als Daten-server. Sie können dann den Zugriff auf die SAS-Daten mithilfe von ODBC finden Sie in der SAS-ODBC-Treiber-guide.
Um die lokalen SAS-ODBC-server ausgeführt, müssen Sie zu:
Fügen Sie einen Eintrag in der services Datei (C:\WINDOWS\system32\drivers\etc\services), wie diese:
...die port-Nummer (hier: 9191), so dass es passt in Ihren lokalen Einstellungen. Der name des service "loclodbc" muss mit dem server-Namen, wie in der ODBC-setup. Beachten Sie, dass der Begriff "Server" hat nichts zu tun mit den physikalischen host-Namen Ihres PCs.
SAS-ODBC-server ist nun bereit zu laufen, es hat aber kein zugewiesener Daten-Ressourcen zur Verfügung. Normalerweise legen Sie diese in den "Libraries" - tab in der SAS-ODBC-setup-Prozess, aber wenn Sie möchten, zeigen Sie auf Datenquellen "on the fly" lassen wir das.
Ihre client-Anwendung können Sie jetzt eine Verbindung zu der SAS-ODBC-server, zeigen Sie auf die Daten-Ressourcen, die Sie zugreifen möchten, und die Daten abzurufen.
Den Weg SAS-Punkte zu Daten-Ressourcen durch das Konzept der "LIBNAME". Eine libname ist eine logische Zeiger auf eine Sammlung von Daten.
Damit
ordnet die Ordner "C:\sasdatafolder" der logische Griff "sasiodat".
Wenn Sie innerhalb von SAS möchten, den Zugang zu den Daten, die in der SAS Datentabelle Datei "C:\sasdatafolder\test.sas7bdat" würden Sie so etwas tun:
Also, was wir tun müssen, ist zu sagen, unsere SAS-ODBC-server zum zuweisen einer libname zu C:\sasdatafolder aus unserer client-Applikation. Wir können dies tun, indem Sie diese Zuweisung auf Anfrage starten, indem die DBCONINIT parameter.
Ich habe einige Beispiel-code, dies zu tun. Mein Beispielcode ist auch geschrieben in der BASE SAS-Sprache. Da es offensichtlich mehr clevere Möglichkeiten, den Zugriff auf SAS Daten, als SAS-Anschluss SAS-via ODBC, dieser code dient nur als Beispiel.
Sollten Sie in der Lage, die nützliche Teile und schaffen Sie sich Ihre eigene Lösung in der Entwicklungsumgebung, die Sie verwenden...
SAS-ODBC-Verbindung-Beispiel-code:
Die Magie passiert in der "CONNECT TO ODBC..." Teil des Codes, die Zuweisung eines libname zu dem Ordner, wo die benötigten Daten befinden.
Gibt ' s jetzt ein python-Paket, das Ihnen erlaubt, zu Lesen .sas7bdat-Dateien oder konvertieren Sie Sie in csv, wenn Sie es vorziehen
https://pypi.python.org/pypi/sas7bdat
Könnte man ein SAS-to-CSV-Konvertierung Programm.
Speichern Sie die folgenden in
sas_to_csv.sas
:Dann, vorausgesetzt, Sie wollen den Zugang
libname.dataset
, rufen Sie dieses Programm wie folgt:SAS-Daten konvertiert CSV-geleitet werden können in Python. In Python, es wäre leicht genug, um zu generieren "libname.dataset" Parameter programmgesteuert.
Ich habe nie versucht,http://www.oview.co.uk/dsread/, aber es könnte sein was Sie suchen: "eine einfache Befehlszeilen-Dienstprogramm für die Arbeit mit Datensätzen in der SAS7BDAT-Datei-format." Aber beachte "Diese software sollte als experimentell betrachtet werden und wird nicht garantiert genau zu sein. Sie verwenden es auf eigene Gefahr. Es funktioniert nur auf Unkomprimiertes Windows-format SAS7BDAT-Dateien für jetzt. "
Ich glaube, Sie könnten in der Lage sein zu verwenden von ADO,
Finden Sie die SAS-support-Website für mehr details.
Haftungsausschluss: