SAS2PYTHON - Deskriptive Statistiken ermitteln


Posted on 11 October 2022 at 15:00 by Stefan Weingaertner

In der Episode 27 unseres heutigen Blog-Beitrags zeigen wir, wie man in SAS/BASE und in Pandas deskriptive Statistiken ermitteln 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: Unsere Input-Tabelle besitzt 6 Datensätze und besteht aus den Spalten "Name", "Department", "Position" und "Age".


                      
                  Name  Department         Position   Age
          Vincent Vega       Sales        Executive    49
     Marsellus Wallace   Marketing        Executive    52
        Butch Coolidge          HR        Executive    45
           Honey Bunny          IT  Project Manager    42
  Esmeralda Villalobos  Purchasing        Assistant    32
       Jules Winnfield     Finance        Team Lead    39
                    


SAS-Code: Das Ermitteln der deskriptiven Statistiken würde man für ein SAS Dataset "df" wie folgt umsetzen.


                      
proc summary data = df print;
   var age;
run;

proc freq data = df;
   tables Department /missing out= freq;
run;

                    


SAS-Output: Der Output sieht in SAS wie folgt aus, pro Prozedur wird ein entsprechender Output erzeugt.


                      
The SUMMARY Procedure
Analysis Variable: Age
                     N                 Mean       Std Dev    Minimum    Maximum
                     6         43.166666667  7.1949056051         32         52
                    
                      
The FREQ Procedure
      Department  Frequency  Percent  Cumulative Frequency  Cumulative Percent
         Finance          1    16.67                    1                16.67
              HR          1    16.67                    2                33.33
              IT          1    16.67                    3                50.00
       Marketing          1    16.67                    4                66.67
      Purchasing          1    16.67                    5                83.33
           Sales          1    16.67                    6               100.00
                    




Python-Code: In Python würde man das Ermitteln der deskriptiven Statistiken für ein Pandas Dataframe "df" mit der folgenden Syntax umsetzen.


                      
import pandas as pd

df.describe(include='all')
                    


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


                      
                Name Department   Position        Age
count              6          6          6   6.000000
unique             6          6          4        NaN
top     Vincent Vega      Sales  Executive        NaN
freq               1          1          3        NaN
mean             NaN        NaN        NaN  43.166667
std              NaN        NaN        NaN   7.194906
min              NaN        NaN        NaN  32.000000
25%              NaN        NaN        NaN  39.750000
50%              NaN        NaN        NaN  43.500000
75%              NaN        NaN        NaN  48.000000
max              NaN        NaN        NaN  52.000000
                    




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.