0% fanden dieses Dokument nützlich (0 Abstimmungen)
13 Ansichten20 Seiten

SAS Skript

Das Dokument beschreibt die Statistiksoftware SAS. Es führt in die Benutzeroberfläche und Funktionen von SAS ein. Weiterhin werden Methoden zum Erzeugen, Lesen, Speichern und Bearbeiten von Daten in SAS erläutert.

Hochgeladen von

ngamenmbiami
Copyright
© All Rights Reserved
Wir nehmen die Rechte an Inhalten ernst. Wenn Sie vermuten, dass dies Ihr Inhalt ist, beanspruchen Sie ihn hier.
Verfügbare Formate
Als PDF, TXT herunterladen oder online auf Scribd lesen
0% fanden dieses Dokument nützlich (0 Abstimmungen)
13 Ansichten20 Seiten

SAS Skript

Das Dokument beschreibt die Statistiksoftware SAS. Es führt in die Benutzeroberfläche und Funktionen von SAS ein. Weiterhin werden Methoden zum Erzeugen, Lesen, Speichern und Bearbeiten von Daten in SAS erläutert.

Hochgeladen von

ngamenmbiami
Copyright
© All Rights Reserved
Wir nehmen die Rechte an Inhalten ernst. Wenn Sie vermuten, dass dies Ihr Inhalt ist, beanspruchen Sie ihn hier.
Verfügbare Formate
Als PDF, TXT herunterladen oder online auf Scribd lesen

L EHRSTUHL FÜR S TATISTIK UND Ö KONOMETRIE

D IE S TATISTIKSOFTWARE

SAS
E INE BEGLEITENDE E INFÜHRUNG ZUM M ODUL G RUNDLAGEN DER S TATISTIK

E RSTELLT VON L ENA U LLRICH & G ORDON F RANK

A PRIL 2014
Inhaltsverzeichnis
1 Einführung 1
1.1 SAS-Oberfläche und ihre Funktionen . . . . . . . . . . . . . . . . . 1
1.2 SAS-Hilfe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

2 Daten erzeugen, lesen & bearbeiten 4


2.1 Daten erzeugen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.2 Daten lesen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.3 Daten speichern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.4 Daten bearbeiten . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

3 Prozeduren in SAS 7
3.1 Proc Print . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.2 Proc Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.3 Proc Freq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.4 Proc Means . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.5 Proc Univariate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.6 Proc Corr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

4 Regressionsanalyse mit SAS <Optional> 13

5 Varianzanalyse mit SAS <Optional> 16

6 Aussicht 18
1 Einführung
Die Theorie der Statistik auf einen Datensatz anzuwenden, kann rechnerisch sehr
aufwendig sein. Somit ist die Nutzung von Computern als Hilfsmitteln oft un-
verzichtbar. Mittlerweile gibt es viele Programme, welche eine breite Palette an
Funktionen und Möglichkeiten haben, Datensätze auszuwerten. Zu den am meis-
ten verbreiteten zählen Programme wie SAS, SPSS und R. Welches Programm man
nutzt, hängt natürlich von vielen Faktoren wie zum Beispiel den Kosten und der
Benutzerfreundlichkeit ab. Die Wahl des Moduls ’Grundlagen der Statistik’ fällt
auf SAS, da die meisten (und vor allem größten) Unternehmen SAS benutzen -
unter anderem P&G, Boeing, Amazon, Intel und Google. Somit sind Vorkenntnisse
in SAS gern gesehen und nicht selten auch ausschlaggebend für die Vergabe von
Arbeitsplätzen. Man bedenke dabei, dass die Schulung von Personal in SAS eine
kostspielige Angelegenheit (bzgl. Zeit und Geld) werden kann.

Dieses Skript soll einen anschaulichen und grundlegenden Zugang zu SAS bieten.
Der prüfungsrelevante Umfang ist mit dem Inhalt des Verzeichnisses ’Statistik I’ auf
der Ilias-Plattform identisch. Themen die darüber hinaus gehen, sind als Optional
gekennzeichnet.

1.1 SAS-Oberfläche und ihre Funktionen


Nach dem Öffnen von SAS erscheint die folgende Oberfläche.

Abbildung 1: Oberfläche des SAS-Programms

1
Um sich in der Masse der Symbole und Reiter zurechtzufinden, wird im Folgenden
das Nötigste erklärt:

1. Menüleiste
In der Menüleiste sind Befehle, die vergleichbare Schritte ausführen, zu ei-
nem Menü zusammengefasst. Beispielsweise kann man unter Datei Program-
me speichern, öffnen oder neue erstellen. Hinter jedem Menü befindet sich
eine Pull-Down-Liste, die die zugeordneten Befehle enthält. Die meisten hier
benötigten Befehle sind auch noch einmal in der Symbolleiste dargestellt.

2. Symbolleiste
Da die meisten Symbole (wie für das Öffnen und Speichern von Program-
men) weit verbreitet sind, wird nur auf die 4 Symbole rechts eingegangen.
Durch Klicken auf das erste Symbol wird ein SAS-Programm, das im Editor-
Fenster eingegeben wurde, gestartet. Das zweite Symbol löscht den Inhalt
des aktivierten Editor- oder Textausgabe-Fenster. Das Ausrufezeichen in dem
Kreis unterbricht ein laufendes SAS-Programm (dies ist sehr wichtig, falls
SAS nicht mehr reagiert und nicht regelmäßig gespeichert wurde). Das letz-
te Symbol ganz rechts (das Buch mit dem Fragezeichen) ruft die SAS-Hilfe
auf, welche später erklärt wird.

3. Explorer und Ergebnisse


Nach dem Anklicken des Reiters Ergebnisse erscheint eine Baumstruktur mit
den bereits berechneten Ergebnissen bzw. Ausgaben der SAS-Programme.
Mit dem Reiter Explorer öffnet sich die SAS-Umgebung. Darunter gelangt
man zu den Bibliotheken (Speicherorte für SAS-Dateien - Programme, Ta-
bellen etc.). Standardmäßig werden die Daten in der Bibliothek work ge-
speichert, welche am Ende der Sitzung gelöscht wird! Auf die Nutzung von
eigenen Bibliotheken wird später eingegangen.

4. Log-/Output- und Editor-Fenster


Das Log-Fenster protokolliert sämtliche von SAS ausgeführten Programme.
Dies beinhaltet unter anderem Fehlermeldungen (engl. Error-Messages) oder
Warnungen (engl. Warning-Messages) oder Bemerkungen (engl. Note). Das
Output-Fenster, oder auch Textausgabefenster, gibt die Ergebnisse der Ein-
gabe aus. In dem Editor-Fenster werden die Befehle (auch Code genannt)
eingetragen. Die Fenster können unter dem Reiter Ansicht (siehe 1.) ein-
und ausgeblendet werden.

5. Pfadangabe
Hier erscheint die Pfadangabe, die angibt, wo das aktuelle SAS-Programm
gespeichert wurde.

6. Zeilen-/Spaltenangabe
An dieser Stelle wird angezeigt, an welcher Stelle im Editor-Fenster sich der
Curser befindet. Da sich Fehlermeldungen meist auf solche Positionen bezie-
hen, kann diese Angabe sehr hilfreich sein.

2
1.2 SAS-Hilfe
Die SAS-System-Hilfe ermöglicht eine Schnellsuche nach Begriffen, Anweisungen,
Prozeduren und Ähnlichem. Durch einen Klick auf das entsprechende Symbol in
der Symbolleiste erscheint ein neues Fenster. Anschließend kann oben links in das
Feld Quick Search ein Suchbegriff eingegeben werden (siehe Punkt 1 in Abbildung
2). Als Beispiel werden Informationen zu der Prozedur proc freq gesucht. Nach
Eingabe erhält man das folgende Fenster.

Abbildung 2: Oberfläche der SAS-Hilfe

Unter dem Reiter Results werden alle Ergebnisse der Suche angezeigt. Im Grun-
de ist es egal, ob wir in unserem Fall auf das Ergebnis 5, 6, 10, 11, 12 oder 13
klicken (siehe Punkt 2 in Abbildung 2), denn jeder Beitrag in der Hilfe zu einer
Prozedur besteht aus 6 Teilen: Overview, Getting Started, Syntax, Details, Examples,
References (wenn man im rechten Teil des Fensters etwas nach oben scrollt, sieht
man die Reiter). Somit verweisen die verschiedenen Suchergebnisse nur auf ver-
schiedene Reiter.
Um einen schnellen Überblick bezüglich der Prozedur zu bekommen, kann man
den Reiter Syntax wählen. Dort wird zum einen kurz erklärt, was der gesuchte Be-
fehl macht. In diesem Fall wird eine Häufigkeitstabelle für jede Variable der Daten
erstellt (siehe Schritt 3 in Abbildung 2). Zum anderen wird der minimale Code für
das Editor-Fenster (siehe Punkt 4 in Abbildung 2) und eine kleine Übersicht der
grundlegenden Statements angezeigt. Dabei sind Statements gewissermaßen Ein-
stellungsoptionen - zum Beispiel, welche Variablen man im Datensatz benutzen
möchte.

3
2 Daten erzeugen, lesen & bearbeiten
Es gibt verschiedene Möglichkeiten, Daten in SAS zu erzeugen. Wir werden zu-
erst auf den Data-Befehl (in Weiteren Data-Step genannt) eingehen. Mit diesem
können Daten ’quasi per Hand’ in Tabellen eingetragen werden. Zudem wird das
Infile-Statement des Data-Steps eingeführt, mit dem Text-Dateien eingelesen wer-
den können. Anschließend wird die Prozedur proc import vorgestellt, mit der es
möglich ist, Excel-Dateien einzulesen. Des Weiteren wird sich mit der Speicherung
von SAS-Dateien durch Ausnutzung von Verzeichnissen/Bibliotheken beschäftigt.
Am Ende dieses Kapitels werden außerdem Möglichkeiten zur Bearbeitung von
bereits vorhandenen Daten erläutert.

2.1 Daten erzeugen


Wir beginnen mit dem händischen Erstellen von Daten. Dazu wird der Data-Step
in Verbindung mit dem input- und dem cards-Statement genutzt. Dies kann wie im
nachstehenden Beispiel geschehen.

1 data student;
2 input MatNr Name$ Vorname$ Geschlecht$ Alter Note 3.1;
3 cards;
4 3128 Schmitz Henrik m 20 17
5 4391 Schmidt Annika w 23 17
6 1298 Meier Anna w 20 23
7 7317 Mueller Peter m 23 23
8 3248 Reinhard Henry m 27 23
9 1239 Baier Helene w 25 33
10 1203 Schultz Arne m 24 50
11 ;
12 run;

In diesem Beispiel wird eine Tabelle mit dem Namen student erstellt und im Ar-
beitsverzeichnis work gespeichert (dies geschieht standardmäßig, wenn kein Ver-
zeichnis angegeben wird - aber dazu später mehr).
Dabei wird mit dem input-Statement angegeben, welche Variablen in den Daten,
bzw. der Tabelle vorkommen sollen. Das Dollarzeichen hinter einem Variablen-
namen gibt an, dass die Variable alphanumerisch ist (also aus Buchstaben und
anderen Zeichen besteht). Ohne dieses Zeichen ist die Variable immer numerisch
(Zahlen). Die anschließende Zahl (wie 3 bei der Variable Note) gibt die Länge der
Eingabe an. In diesem Fall werden nur 3 Zeichen für einen eine Note gespeichert,
die an der zweiten Stelle durch einen Punkt getrennt wird.
Mit dem cards-Statement wird die eigene Eingabe gesteuert. Dabei ist zu beach-
ten, dass jede Daten-/Tabellenzeile in einer separaten Code-Zeile stehen muss.
Jede Eingabe wird dabei mit einem Leerzeichen getrennt. Fehlende Eingaben wer-
den mit einem Punkt gekennzeichnet. Diese Einstellungen lassen sich verändern,
aber der Leser sei hierfür auf die SAS-Hilfe verwiesen.
Der run-Befehl in der Code-Zeile 8 gibt SAS die Anweisung, den davorstehenden
Code auszuführen. Die Setzung der Semikola ist besonders wichtig, weil diese für

4
SAS das Signal für das Ende einer Befehlszeile bedeutet. Die im Beispiel erzeugten
Daten, können in der nachfolgenden Tabelle betrachtet werden.

MatNr Name Vorname Geschlecht Alter Note


1 3128 Schmitz Henrik m 20 1.7
2 4391 Schmidt Annika w 23 1.7
3 1298 Meier Anna w 20 2.3
4 7317 Mueller Peter m 23 2.3
5 3248 Reinhard Henry m 27 2.3
6 1239 Baier Helene w 25 3.3
7 1203 Schultz Arne m 24 5

2.2 Daten lesen


Das Einlesen von Text-Dateien (.txt) ist mit dem infile-Statement möglich. An dem
folgenden Beispiel werden die Besonderheiten dieses Befehls geklärt.
1 data Text;
2 infile ’R:\profile\Desktop\Ilias\[Link]’ delimiter=’09’X;
3 input Nummer Geschl$ gross 4.2 Note;
4 run;
In diesem Fall wird die eingelesene Text-Datei als SAS-Tabelle unter dem Namen
personen gespeichert. Hinter dem infile-Statement, muss die Pfadangabe der ein-
zulesenden Datei und das Trennzeichen der einzelnen Variablen angegeben wer-
den. Der Terminus delimiter gibt an, welches Trennzeichen in der Datei verwendet
wurde. Wenn die Daten mit Kommata getrennt sind, würde man beispielsweise
delimiter = ’,’ schreiben. In dem Beispiel steht ’09’X für die Trennung durch Tab-
stops. Des Weiteren muss dem infile-Statement immer ein input-Statement folgen,
damit SAS die Variablenstruktur der Text-Datei erfassen kann.
<Optional>
Falls ein Datensatz als Excel-Datei vorhanden ist, kann dieser mit der Prozedur
proc import eingelesen werden. Wenn beispielsweise die xlsx-Datei [Link]
auf dem Desktop vorhanden ist, kann man sie wie im nachstehenden Beispiel ein-
lesen.
1 proc import
2 datafile= ’R:\profile\Desktop\[Link]’ dbms= xlsx out= test;
3 run;
Dabei muss mit datafile der Dateipfad und mit dbms der Dateityp angegeben wer-
den (wer gerne andere Dateien einlesen möchte, sei auch hier auf die SAS-Hilfe
verwiesen). Durch das out-Statement wird festgelegt, in welche Tabelle der Inhalt
der eingelesenen Datei geschrieben wird.

2.3 Daten speichern


Wie bereits erwähnt, werden alle erzeugten Tabellen standardmäßig in dem Ver-
zeichnis/der Bibliothek work gespeichert, welches am Ende der SAS-Sitzung ge-

5
löscht wird. Um Daten in einem anderen Verzeichnis permanent zu speichern, wird
der libname-Befehl genutzt. Dies kann zum Beispiel folgendermaßen geschehen.
1 libname a ’R:\Profile\Desktop\Ilias\’;
Hier wurde das Verzeichnis a erstellt, welche Dateien in den Ordner Ilias auf dem
Desktop speichert. Der angegebene Ordner muss bereits existieren! Der Inhalt des
Ordners bleibt natürlich über die aktuelle Sitzung hinaus bestehen, aber die er-
zeugte Verbindung (also das/die jeweilige Verzeichnis/Bibliothek) muss jede Sit-
zung neu gesetzt werden. Beispiele für die Nutzung des Verzeichnisses sind im
nächsten Abschnitt gegeben.

2.4 Daten bearbeiten


Um Daten aus anderen SAS-Tabellen weiter zu verarbeiten ist das set-Statement
zu benutzen. Wir betrachten das folgende Beispiel.
1 data a.student1;
2 set student;
3 keep MatNr1 Name Note;
4 MatNr1 = MatNr - 1000;
5 run;
In diesem Beispiel wurde eine neue Tabelle student1 in dem Verzeichnis a erzeugt.
Dabei wurde die Tabelle student mit dem set-Statement geladen. Zudem wurde mit
dem keep-Statement angegeben, dass nur die Variablen MatNr1, Name und Note
in der Tabelle student1 gespeichert werden. Anstelle des keep-Statements könn-
te man auch das drop-Statement verwenden. Dieses bestimmt, welche Variablen
nicht gespeichert werden. Die 4. Code-Zeile legt eine neue Variabe MatNr1 an,
welche aus der Variable MatNr − 1000. Eine Liste aller verfügbaren mathemati-
schen Funktionen, wie zum Beispiel max, ist in der SAS-Hilfe vorhanden.

<Optional>

Wenn einzelne Werte/Ausprägungen von Daten geändert werden sollen, kann dies
im Edit-Modus geschehen. Um diesen zu nutzen, öffnet man links im Explorer
einen Datensatz und klickt entsprechend in die Symbolleiste (siehe Abbildung 3).

Abbildung 3: Der Weg zum Edit-Modus

6
1. Edit-Modus
Durch dieses Symbol oder den gleichnamigen Unterpunkt in dem Menü Be-
arbeiten gelangt man in den Edit-Modus. In diesem Modus kann durch Ankli-
cken der jeweiligen Zelle der Wert individuell verändert werden.

2. Browse-Modus
Durch dieses Symbol oder den gleichnamigen Unterpunkt in dem Menü Bear-
beiten gelangt man in den Browse-Modus, also wieder zurück zum ursprüng-
lichen Modus. Außerdem ist somit der neue Wert gespeichert.

3 Prozeduren in SAS
Nachdem die Daten zur Verfügung stehen, werden die passenden Prozeduren be-
nötigt, um diese zu analysieren. Im Folgenden wird auf die Prozeduren proc print,
proc contents, proc frec, proc means, proc univariate und proc corr eingegangen.

3.1 Proc Print


Die Prozedur Print schreibt den SAS-Datensatz in das Ausgabefenster. Diese Aus-
gabe umfasst die Merkmalswerte aller bzw. ausgewählter Variablen. Der nachste-
hende Code zeigt eine mögliche Anwendung.
1 proc print data=student;
2 run;
Dabei wird die SAS-Tabelle student ausgegeben. Die Ausgabe von SAS kann in Ab-
bildung 4 betrachtet werden.

Abbildung 4: Ausgabe durch proc print

Im Fall, dass der Datensatz für bestimmte Variablen ausgegeben werden soll, kön-
nen nach einem var-Statement die Variablennamen geschrieben werden. Zusätz-
lich kann man den Datensatz durch ein by-Statement nach den verschiedenen
Ausprägungen einer Variable getrennt darstellen. Der folgende Code zeigt dies am
Beispiel.

7
1 proc print data=student;
2 var MatNr Note;
3 by Note;
4 run;
Hier werden also nur die Variablen Nummer und Wert ausgegeben. Zudem wird
der Datensatz nach den Ausprägungen der Variable Nummer ausgegeben.

<Optional>

Sofern weitere Optionen gewünscht sind, werden diese vor dem Semikolon in
Code-Zeile 1 eingefügt und jeweils mit einem Leerzeichen getrennt. Die folgende
Tabelle gibt einen kleinen Überblick gängiger Optionen. Weitere sind in der SAS-
Hilfe vorhanden.
Option Erklärung
label Verwendet die Bezeichnungen für Variablen als Spaltenüber-
schriften anstatt Variablennamen
N Gibt die Länge des Datensatzes aus
noobs Verhindert die Ausgabe einer Spalte, in der die Zeilennummer
der betreffenden Merkmalswerte im Datensatz (engl.: observa-
tion number) angegeben ist
round Rundet numerische Werte auf zwei Nachkommastellen
width= Legt die Spaltenbreite für die Ausgabe fest, mögliche Werte
sind u. a. FULL, MINIMUM und UNIFORM

3.2 Proc Contents


Die Contents-Prozedur gibt verschiedene Informationen über die SAS-Datei (aber
nicht deren Inhalt) aus; unter anderem wie die Datei heißt, wann diese erstellt
bzw. zuletzt geändert wurde und die Anzahl der Beobachtungen und Variablen.
Beispielsweise könnte man den Inhalt des Datensatzes student wie folgt analysie-
ren.
1 proc contents data=student;
2 run;
Am Ende der Ausgabe steht immer eine alphabetische Liste mit den Variablen der
Datei mit Name, Typ, Zeichenanzahl und fortlaufender Nummer (siehe Abbildung
5).

8
Abbildung 5: Alphabetische Liste der Variablen

3.3 Proc Freq


In SAS ist die Analyse von Häufigkeiten eines Datensatzes mit dem Freq-Befehl
möglich. Mithilfe dieses Befehls können die absoluten und relativen Häufigkeiten
bzw. Summenhäufigkeiten der Datei student in einer Tabelle erzeugt werden. Die
Prozedur kann dann wie folgt ausgeführt werden.
1 proc freq data=student;
2 run;
Dabei erstellt SAS eine Häufigkeitstabelle, getrennt nach allen Variablen (siehe
Abbildung 6). In diesem Fall betrachten wir nur die Variable Note.

Abbildung 6: Häufigkeitstabelle mittels proc freq

Zusätzlich zu univariaten Auswertungen, ist auch das Erstellen von Kontingenzta-


bellen möglich. Durch den folgenden Code wird eine Kontingenztabelle von den
Merkmalen Geschlecht und Geschwisteranzahl durchgeführt.
1 proc freq data=student;
2 table Note*Geschlecht / nocol norow;
3 where Note < 3.0;
4 run;
Das table-Statement steuert, welche Variablen für die Kontingenztabelle benutzt
werden. In der Ausgabe werden dann absolute, relative, bedingte und kumulierte
Häufigkeiten in eine Tabelle geschrieben. Zusätzlich kann man im table-Statement
Optionen benutzen, um die Ausgabe zu beeinflussen. In diesem Beispiel wurde
mit nocol und norow auf die bedingten Häufigkeiten verzichtet. Zudem gibt es die

9
Option chisq, welche unter anderem den χ2 -Kontingenz- und den Φ-Koeffizienten
ausgibt (siehe Übungsserie 3). In der 3. Codezeile wird mit dem where-Statement
die Bedingung angegeben, dass nur Daten betrachtet werden, bei denen die Note
kleiner bzw. besser als 3.0 ist.
<Optional>
Da die Optionen für das table-Statement sehr umfangreich sind, folgt eine Tabelle
mit den häufiger Verwendeten.
Option Erklärung
out=<xyz> Schreibt die Ausgabe in die Tabelle mit Name <xyz>
nofreq Unterdrückt die Ausgabe von gemeinsamen absoluten Häufig-
keiten
nopercent Unterdrückt die Ausgabe von gemeinsamen relativen Häufig-
keiten
noprint Unterdrückt die Ausgabe (sinnvoll mit out=)
expected Gibt zusätzlich die erwarteten Häufigkeiten bei Unabhängig-
keit aus
plot= Gibt zusätzlich eine grafische Darstellung aus

Optional können die Daten auch als Häufigkeitsverteilung dargestellt werden. Bei-
spielsweise kann dies wie folgt geschehen.
1 ods graphics on;
2 proc freq data=student;
3 table Note*Geschlecht /plots=freqplot(twoway=stacked);
4 run;
5 ods graphics off;
Damit Grafiken ausgegeben werden können, muss ods graphics auf on gestellt wer-
den. Der eigentliche Plot erfolgt dann über eine Option des table-Statements. Für
die verschiedenen Darstellungsmöglichkeiten sei auf die Hilfe verwiesen. Die Aus-
gabe des Beispielcodes ist in Abbildung 7 dargestellt.

Abbildung 7: Häufigkeitsdiagramm mittels proc freq

10
3.4 Proc Means
Die Prozedur Means bietet eine schnelle Möglichkeit für eine univariate Analy-
se. Die Optionen für die Prozedur werden zwischen das data-Statement und das
Semikolon geschrieben. Zusätzlich kann mit dem var-Statement die zu analysie-
rende Variable festgelegt werden. In dem folgenden Beispiel werden einige Lage-
und Streuungsparameter der Variable Note für den Datensatz student berechnet.
1 proc means data=student n mean median mode var std min max maxdec=2;
2 var Note;
3 run;
Dieser Befehl erzeugt folgende Ausgabe.

Abbildung 8: Ausgabe durch proc means

3.5 Proc Univariate


Die Prozedur proc univariate ist umfangreicher als die Prozedur proc means und
bietet eine erweiterte univariate Analyse. Hiermit werden neben den grundlegen-
den Lage- und Streuungsparametern unter anderem auch Quantile, Extremwerte
und Teststatistiken/Prüfgrößen (u. a. für den T-Test) berechnet. Der nachstehende
Code erstellt eine univariate Analyse des Datensatzes Personen anhand der Varia-
ble Note.
1 proc univariate data=student;
2 var Note;
3 run;
Mit dieser Prozedur können ebenfalls Grafiken, wie zum Beispiel Histogramme
oder eine empirische Verteilungsfunktion, erzeugt werden. Für die empirische Ver-
teilungsfunktion muss das cdfplot- und für ein Histogramm das histogram-Statement
ergänzt werden. Es folgt ein Beispiel für die empirische Verteilungsfunktion (engl.
cumulative distribution function, cdf).
1 proc univariate data=student;
2 var Note;
3 cdfplot Note;
4 run;
Ebenso kann ein Histogramm erstellt werden.
1 proc univariate data=student;
2 var Note;
3 histogram Note;
4 run;

11
<Optional>

Um mit proc univariate auch Konfidenzintervalle und Teststatistiken/Prüfgrößen


zu berechnen, können verschiedene Optionen genutzt werden.

Option Erklärung
all Ausgabe aller Ergebnisse, die die Univariate-Prozedur durch all
ihre Optionen erzeugen kann
alpha= Bestimmt das Konfidenzniveau (sonst ist alpha=0.05). Dieser
Wert muss zwischen 0 und 1 liegen
cibasic Konfidenzintervalle für Mittelwert, Standardabweichung, Vari-
anz unter der Annahme der Normalverteilung
freq Gibt eine Häufigkeitstabelle aus
mu0= Legt den Wert für µ0 der Nullhypothese H0 : µ = µ0 fest (sonst
ist µ0 = 0)
outtable= Speichert die Ergebnisse in einer neuen Tabelle unter der an-
gegebenen SAS-Datei

3.6 Proc Corr


Die Prozedur proc corr analysiert den Zusammenhang/die Korrelation zwischen
zwei Variablen. Für kardinal-skalierte Variablen wird mit der Option pearson der
Korrelationskoeffizient nach Bravais-Pearson bestimmt. Ebenso kann mit spearman
der Korrelationskoeffizient nach Spearman bestimmt werden. In folgendem Bei-
spiel wird der Korrelationskoeffizient nach Spearman zwischen der Variable Note
und Alter bestimmt:
1 proc corr data=student spearman noprob;
2 var Note Alter;
3 run;
Die Option noprob unterdrückt zusätzliche Angaben zu Tests, deren Theorie in der
Vorlesung nicht behandelt wurde.

Abbildung 9: Analyse des Zusammenhangs nach Spearman

12
In der Ausgabe (siehe Abbildung 9) erscheint neben dem Korrelationskoeffizien-
ten nach Spearman, auch eine Tabelle mit Statistiken, die schon aus proc means
bekannt sind. Durch die Optionen nosimple wird Letztere nicht ausgegeben. Zu-
sätzlich kann mit der Option cov die Kovarianz zwischen den beiden Variablen be-
stimmt werden. Außerdem wird mit der Option plots=scatter ein Streudiagramm
erzeugt.

4 Regressionsanalyse mit SAS <Optional>


Die Regressionsanalyse ist in SAS durch die Prozedur proc reg implementiert. Als
Beispiel betrachten wir ein Unternehmen, das mehrere Filialen betreibt. In der fol-
genden Tabelle hat dieses Unternehmen den Umsatz und die Fläche dieser Fillialen
aufgelistet:

Abbildung 10: Umsatz- und Flächendaten des Unternehmens

Die grundlegende Verwendung von proc reg wird anhand einer linearen Einfach-
regression erklärt. Dabei stellt umsatz die abhängige und flaeche die unabhängige
Variable dar. Der SAS-Code für dieses Beispiel hat folgende Gestalt:
1 ods output "Parameter estimates"=Reg_ergeb;
2 proc reg data=daten;
3 model umsatz=flaeche / CLB COVB;
4 plot umsatz*flaeche;
5 run;
6 ods output close;
Die Codezeilen 1 und 6 sind für die grafische Ausgabe des Streudiagramms nötig,
welches durch die 4. Codezeile mittels plot ausgeführt wird. Die Kopfzeile der Pro-
zedur (Codezeile 2) ist analog zu den anderen Prozeduren aufgebaut. Das Model
für die Regressionsanalyse wird in der 3. Codezeile festgelegt. Dabei werden links
von dem Gleichheitszeichen die abhängige und rechts die unabhängigen Variablen
geschrieben. Anschließend können Optionen angegeben werden. Hier wurden die
Konfidenzintervalle für die Parameterschätzer (CLB) sowie die Kovarianzmatrix
der Schätzer (COVB) ausgegeben.

13
Die Ausgabe für den obigen Code ist in Abbildung 11 dargestellt:

Abbildung 11: Output der Regressionsanalyse mit SAS

Die Ausgabe enthält ausführliche Informationen zu der Regressionsanalyse.

1. Das erste Feld der Ausgabe befasst sich mit der Varianzanalyse. Hier wird
dargestellt, wie gut die Regression prinzipiell gepasst hat. In der Spalte DF
(engl. Degrees of Freedom) ist die Anzahl der Freiheitsgerade dargestellt.
Die dritte Spalte enthält die Quadratsummen SQE, SQR und SQT. Die Va-
rianzschätzungen (Quotient aus Quadratsummen und Freiheitsgraden) sind
in der Spalte Mittlere Quadratsummen abgebildet. Die Spalte F-Statistik gibt
den Wert für die Teststatistik zur Hypothesenprüfung an, ob das Bestimmt-
heitsmaß gleich 0 ist. Die Signifikanz des Wertes der Teststatistik wird in Pr
> F dargestellt. Ist α größer als dieser Wert, wird die Nullhypothese abge-
lehnt.

2. Das zweite Feld enthält die Schätzung der Standardabweichung der Residu-
en (Root MSE), den Mittelwert der abhängigen Variable (Dependent Mean),

14
den Variationskoeffizienten (Coeff Var), das Bestimmtheitsmaß (R-Square)
und ein angepasstes Bestimmtheitsmaß (Adj R-Sq), welches zusätzliche Pa-
rameter mit Straftermen versieht (für Mehrfachregression sinnvoll).

3. In diesem Feld werden nähere Informationen zu den Parameterschätzungen


ausgegeben. In der Spalte Parameterschätzer werden die Schätzungen für die
Regressionsparameter aufgeführt (in diesem Beispiel steigt in dem linearen
Modell der geschätzte Umsatz um 5.22 Einheiten pro Flächeneinheit). Wei-
ter wird der Standardfehler bei der Schätzung angegeben, sowie die Werte
der Teststatistik für die Hypothese, dass der Parameter gleich 0 ist. Die Si-
gnifikanz für den Wert dieser Teststatistik ist in Pr > |t| angegeben.

Falls mehrere unabhängige Variablen in der Regressionsanalyse vorhanden sind,


können diese mit einem Leerzeichen getrennt in dem model-Statement genutzt
werden. Zur Veranschaulichung kann das Beispiel aus Abschnitt 4.1 um die Passan-
tenfrequenz pro Tag erweitert werden. Demnach ändert sich der Code folgender-
maßen:
1 proc reg data=daten;
2 model umsatz=flaeche passanten;
3 run;

15
5 Varianzanalyse mit SAS <Optional>
Die Varianzanalyse kann in SAS mit dem Befehl proc anova durchgeführt werden.
Als Beispiel können 6 Studenten in 4 Semestern betrachtet werden die folgende
Literaturausgaben haben:

Studenten
Semester 1 2 3 4 5 6
1 0 10 0 10 20 20
2 40 30 10 20 10 70
3 20 10 20 30 20 20
4 30 30 40 30 40 10

Für die Ausführung einer Varianzanalyse zum Test, ob die Literaturausgaben sich
pro Semester unterscheiden, genügt bereits der folgende Code:
1 proc anova data=analyse;
2 class semester;
3 model ausgaben=semester;
4 run;
Dabei wird wie gewöhnlich in Codezeile 1 angegeben, welcher Datensatz genutzt
werden soll (data=). Zudem wird in Zeile 2 mit dem class-Statement die Variable
angegeben, welche die Stichprobenindizierung beinhaltet. Hier werden 4 Stich-
proben (1 je Semester) verglichen. Die Werte der Variable Semester sind soge-
nannte Dummywerte. Wichtig ist, dass sie innerhalb der Stichprobe einheitlich
und je Stichprobe unterschiedlich ist. Beispielsweise würden die ersten 6 Beob-
achtungen (0, 10, 0, 10, 20, 20) den Wert 1 für die Variable Semester haben.

Die eingelesenen Daten müssen für eine Varianzanalyse also die folgende Form
haben:

Abbildung 12: Daten zur Anova-Analyse

16
Anschließend wird mit model wieder das Modell angegeben. In diesem Fall sollen
die Ausgaben auf den Einfluss des Faktors Semester überprüft werden. Als Output
erhält man folgendes Ergebnis:

Abbildung 13: Output der Varianzanalysee mit SAS

1. Diese Tabelle stellt ebenso wie die Darstellung auf S. 47 in der Formelsamm-
lung von Bleymüller/Gehlert die Anzahl der Freiheitsgerade, die Summen
der Abweichungsquadrate (SQA, SQR und SQT), die Mittleren Quadratsum-
men (MQA und MQR) und die Prüfgröße/Teststatistik (fe) dar. Die Signifi-
kanz des Wertes der Teststatistik wird in Pr > F dargestellt. Ist α größer als
dieser Wert, wird die Nullhypothese abgelehnt.

2. Das zweite Feld enthält das Bestimmtheitsmaß (R-Square), den Variationsko-


effizienten ([Link]), die Schätzung der Standardabweichung innerhalb der
Gruppen (Wurzel MSE) und den Mittelwert aller Beobachtungen (ausgaben
Mittelwert).

3. Das dritte Feld zeigt die erste Zeile der Tabelle aus dem ersten Feld und gibt
somit keine neuen Erkenntnisse.

17
6 Aussicht
Natürlich umfasst dieses Skript nur einen kleinen Teil dessen, was mit SAS möglich
ist. Das Ziel dieser Schrift und der zugehörigen Tutorien ist, dass das gelernte
Wissen aus der Vorlesung und Übung in SAS angewandt werden kann. Für ein
etwaiges Selbststudium mit SAS empfehlen wir das Buch:

Datenanalyse mit SAS, W. Krämer et al. (2005), Springer, Heidelberg

– N OTIZEN –

18

Das könnte Ihnen auch gefallen