SAS2PYTHON - Einlesen von CSV- und Excel-Dateien


Posted on 12 September 2022 at 18:00 by Stefan Weingaertner

In der Episode 23 unseres heutigen Blog-Beitrags zeigen wir, wie man mit SAS/BASE und mit Pandas CSV- und Excel-Dateien einlesen kann.



Ein Pandas DataFrame ist einem SAS Data Set sehr ähnlich - es handelt sich um eine zweidimensionale tabellarische Datenstruktur mit gelabelten Spalten, die von unterschiedlichem Datentyp sein können. Wie in diesem Beitrag gezeigt wird, kann nahezu jede Operation, die mit dem SAS Data Step auf einen Datensatz angewendet werden kann, auch in Pandas ausgeführt werden.

Input: Eine CSV-Datei "hr.csv" und eine Excel-Datei namens "hr.xlsx".




SAS-Code: Das Einlesen von CSV- oder Excel-Dateien in ein SAS Dataset "df" würde man wie folgt umsetzen.


                      
/* Import einer CSV-Datei */

proc import datafile = "user/hr.csv"
    out = df
    dbms = csv
    replace;
    getnames = YES;
run;

/* Import einer Excel-Datei */

proc import datafile = "user/hr.xlsx"
    out = df
    dbms = xlsx
    replace;
    sheet = "sheet1";
    getnames = YES;
run;
                    


SAS-Output: Das Ergebnis sieht in SAS wie folgt aus, dem SAS Data Set wird die Excel-Tabelle hinzugefügt.


                      
Obs                Name  Department         Position
1          Vincent Vega       Sales        Executive
2     Marsellus Wallace   Marketing        Executive
3        Butch Coolidge          HR        Executive
4           Honey Bunny          IT  Project Manager
5  Esmeralda Villalobos  Purchasing        Assistant
6       Jules Winnfield     Finance        Team Lead
                    




Python-Code: In Python würde man das Einlesen von CSV- und Excel-Dateien in ein Pandas Dataframe "df" mit der folgenden Syntax umsetzen.


                      
import pandas as pd

# Import einer CSV-Datei

df = pd.read_csv("user/hr.csv")

# Import einer Excel-Datei

df = pd.read_excel("user/hr.csv", sheetname = "sheet1")
                    


Python-Output: Das Ergebnis sieht in Pandas wie folgt aus, dem Pandas Dataframe wird die Excel-Tabelle hinzugefügt.


                      
                   Name  Department         Position 
0          Vincent Vega       Sales        Executive 
1     Marsellus Wallace   Marketing        Executive
2        Butch Coolidge          HR        Executive
3           Honey Bunny          IT  Project Manager
4  Esmeralda Villalobos  Purchasing        Assistant
5       Jules Winnfield     Finance        Team Lead
                    




Wenn Sie die nächste Episode nicht abwarten möchten, können Sie auch gerne unser umfangreiches Training Python für SAS Professionals buchen.

Informationen zu den nächsten Kursterminen und zu unserem gesamten Trainingsangebot finden Sie hier.