SAS9

Deskriptive Statistiken in SAS meistern: PROC MEANS, SUMMARY und TABULATE

Simon 7 Aufrufe

In der Welt der Datenanalyse mit SAS© ist die Erstellung deskriptiver Statistiken ein grundlegender Schritt. Drei Prozeduren eignen sich besonders für diese Aufgaben: PROC MEANS, PROC SUMMARY und PROC TABULATE. Obwohl sie eine gemeinsame Basis haben, besitzt jede ihre eigenen Besonderheiten und spezifischen Anwendungsfälle.

Dieser Artikel untersucht ihre Unterschiede, ihre jeweilige Funktionsweise und wie man sie effektiv einsetzt, sei es über Code oder grafische Oberflächen wie SAS© Enterprise Guide und SAS© Studio.

Deskriptive Statistiken in SAS meistern: PROC MEANS, SUMMARY und TABULATE -

PROC MEANS: Direkte Untersuchung

Die Prozedur PROC MEANS ist oft die erste Wahl des Analysten. Ihre Hauptfunktion besteht darin, deskriptive Statistiken für Variablen zu berechnen, entweder für alle Beobachtungen oder nach Gruppen.

Ihre Fähigkeiten umfassen:

  • Die Schätzung von Quantilen (einschließlich des Medians).

  • Die Berechnung von Konfidenzintervallen für den Mittelwert.

  • Die Identifizierung von Extremwerten.

  • Die Durchführung von Student-t-Tests (t-test).

Hauptmerkmal: Standardmäßig zeigt PROC MEANS seine Ergebnisse direkt im Ausgabefenster (Output window) an.

PROC SUMMARY: Die diskrete Stärke

Technisch gesehen ist die PROC SUMMARY identisch mit der PROC MEANS in Bezug auf statistische Berechnungen. Sie bietet die gleichen Verarbeitungsoptionen.

Der entscheidende Unterschied: Im Gegensatz zu MEANS, das die Anzeige bevorzugt, ist SUMMARY darauf ausgelegt, seine Ergebnisse in eine Ausgabetabelle (Dataset) zu schreiben. Sie zeigt standardmäßig nichts im Ergebnisfenster an, was sie ideal für die Vorbereitung von Zwischendaten macht, ohne die Berichte zu überladen.

PROC TABULATE: Die erweiterte Formatierung

Die PROC TABULATE greift die Konzepte von MEANS und SUMMARY auf, geht aber in Bezug auf die Darstellung viel weiter. Sie ist auf die Anzeige deskriptiver Statistiken in Form von hierarchischen Tabellen spezialisiert.

Ihre Hauptvorteile:

  • Flexibilität: Sie ermöglicht es, die Werte von Variablen zu klassifizieren und komplexe hierarchische Beziehungen zwischen ihnen herzustellen.

  • Doppelte Ausgabe: Sie kann die Ergebnisse an das Ausgabefenster und/oder an eine Datentabelle senden.

  • Formatierung: Sie bietet volle Kontrolle über die Bezeichnungen (Labels) und die Formatierung der generierten Statistiken.

Hinweis zu SAS© Viya: In der SAS© Viya-Umgebung verwenden diese drei Prozeduren CAS-Aktionen (Cloud Analytic Services), wenn sie CAS-Tabellen verarbeiten, was eine optimale Leistung bei großen Datenmengen gewährleistet.

Praktische Beispiele (Code)

Hier sind konkrete Beispiele unter Verwendung des fiktiven Datensatzes sashelp.cars, der in allen SAS©-Installationen enthalten ist.

Verwendung von MEANS und SUMMARY

Der folgende Code veranschaulicht den Unterschied in der Ausgabe. PROC MEANS zeigt das Ergebnis an, während PROC SUMMARY eine Tabelle mit dem Namen WORK.summaryout erstellt.

1
 
1/* Direkte Anzeige der Statistiken */
2PROC MEANS DATA=sashelp.cars;
3 var msrp invoice;
4RUN;
5 
6/* Erstellung einer Ausgabetabelle */
7PROC SUMMARY DATA=sashelp.cars;
8 var msrp invoice;
9 OUTPUT out=WORK.summaryout (LABEL="Ausgabetabelle von PROC SUMMARY für SASHELP.CARS");
10RUN;

Verwendung von TABULATE für eine strukturierte Tabelle

Hier erstellen wir eine Kreuztabelle, die den Fahrzeugtyp (in den Zeilen) mit Statistiken zu Gewicht und Radstand (in den Spalten) kreuzt.

1PROC TABULATE
2 DATA=SASHELP.CARS
3 OUT=WORK.tabulateout (LABEL="Ausgabetabelle von PROC TABULATE für SASHELP.CARS")
4 FORMAT=comma10.2;
5 VAR Weight Wheelbase;
6 CLASS Type / ORDER=freq MISSING;
7 
8 TABLE /* Zeilendimension */
9 Type,
10 /* Spaltendimension */
11 N
12 Weight * Range
13 Wheelbase * Mean;
14RUN; QUIT;

Weiterführend: Bedingte Farbgebung mit TABULATE

Einer der großen Vorteile von PROC TABULATE ist die Fähigkeit, benutzerdefinierte Formate zur Hervorhebung von Daten zu verwenden (z. B. Ampel-Farbcode).

1/* Definition des Farbformats */
2PROC FORMAT;
3 VALUE watchit
4 0 - 20000 = 'Green'
5 20001 - 30000 = 'Orange'
6 30001 - 50000 = 'Blue'
7 50001 - 60000 = 'Purple'
8 60001 - high = 'Red';
9RUN;
10 
11/* Anwendung des Formats als Vordergrundfarbe (foreground) */
12PROC TABULATE DATA=sashelp.cars S=[foreground=watchit.]
13 FORMAT=dollar10.2
14 OUT=WORK.tabulatecolor (LABEL="Farbige Ausgabetabelle für SASHELP.CARS");
15 CLASS type cylinders / MISSING;
16 VAR invoice;
17 
18 TABLE type ALL,
19 Invoice * mean;
20RUN;

Vergleichende Zusammenfassung

Um Ihnen bei der Auswahl der richtigen Prozedur für Ihre Bedürfnisse zu helfen, finden Sie hier eine zusammenfassende Tabelle der wichtigsten funktionalen Unterschiede und ihrer Verfügbarkeit in den grafischen Oberflächen:

MerkmalPROC MEANSPROC SUMMARYPROC TABULATE
HauptzielSchnelle Untersuchung und StandardstatistikenBerechnung von Statistiken zur Speicherung (ETL)Präsentationsberichte und komplexe Tabellen
StandardausgabeErgebnisfenster (Output)SAS©-Datentabelle (Dataset)Ergebnisfenster (Output)
Layout-FlexibilitätStandard (Vertikale Liste)N/A (Datenbankstruktur)Hoch (Kreuz- und hierarchische Tabellen)
Unterstützung für SAS© Enterprise GuideJa (Über Assistent)Nein (Code erforderlich)Ja (Über Assistent)
Unterstützung für SAS© StudioJa (Über Aufgaben)Nein (Code erforderlich)Nein (Code erforderlich)

Obwohl PROC MEANS, SUMMARY und TABULATE in den deskriptiven Statistiken, die sie generieren, ähnlich sind, unterscheiden sie sich durch die Art ihrer Ausgaben und ihre Flexibilität.

Während PROC MEANS ideal für eine schnelle Überprüfung und PROC SUMMARY für die Erstellung von Datentabellen ist, bietet PROC TABULATE die größte Kontrolle. Ihre Vielseitigkeit macht sie oft zur besten Wahl für Szenarien, die eine saubere und hierarchische Darstellung der Daten erfordern.