View
225
Download
0
Category
Preview:
Citation preview
Freie Universität Berlin Institut für Soziologie Garystr. 55 D-14195 Berlin Tutorien zur VL Statistik I
Einführung in STATA Einführung in STATA Einführung in STATA Einführung in STATA
Programmversion 8Programmversion 8Programmversion 8Programmversion 8
Ergänzung zu den Vorlesungen Statistik im Grundstud ium
Lehrgebiet I: Empirische Methoden und Statistik
Autor:
Lars E. Kroll
Tutor für Statistik
2
- Inhaltsverzeichnis -
Einleitung ......................................... ............................................................ 3
1 Grundlagen......................................... .................................................... 4
1.1 Das Programm........................................................................................................4
1.2 Der Datensatz.........................................................................................................5
2 Die grundlegende Syntax von Stata .................. ................................... 6
3 Das Hauptprogramm.................................. ............................................ 8
3.1 Datensichtung.........................................................................................................8
3.2 Dateneingabe .........................................................................................................9
3.3 Daten bearbeiten (rekodieren)..............................................................................11
4 DO Files – Mehrere Befehle auf einmal ausführen .... ........................ 12
5 Deskriptive Statistik.............................. ............................................... 13
5.1 Numerische Verfahren..........................................................................................13
6 Statistisches Testen und Schätzen.................. ................................... 17
7 Die Modellierung von Zusammenhängen................ ........................... 18
7.1 Lineare Multiple Regression mit Stata ..................................................................18
7.2 Logistische Regression mit Stata..........................................................................19
8 Sonderfälle ........................................ ................................................... 19
Anmerkungen ........................................ .................................................... 20
Weiterführende Literatur ........................... ................................................ 20
3
Einleitung
STATA ist eine weit verbreitete Software zur Datenanalyse. Sie wird von vielen Disziplinen u.a.
Volkswirtschaften, Epidemiologie oder auch Soziologie. Die Software ist im deutschen Sprachraum
sicher nicht so verbreitet wie z.B. SPSS, ihre Nutzerzahlen steigen aber beständig. Die Vorteile
von STATA sind die besonders gut strukturierten Befehle, das hervorragende neue Grafikmodul,
die Kundenfreundliche Politik der STATA Corp. und seine gute Erweiterbarkeit durch die User. Am
Institut für Soziologie wird STATA als alternatives Datenanalyseprogramm eingesetzt.
Das folgende Skript soll für interessierte Studenten eine kurze Einführung in das Programm bieten.
Für eine ausführliche Einführung wird u.a. auf die im Anhang angegebene Literatur zu Stata
verwiesen und auf die Internet basierten Kurse auf der offiziellen Stata Homepage www.stata.com.
Hinweis zur Darstellung
Ein Hinweis zur Darstellung im Skript, werden Befehle und ihre Resultate in Stata dargestellt, so
geschieht dies indem eine neue Zeile begonnen wird und die Schriftart wechselt, die neue Zeile
beginnt mit einem Punkt (.) um das Ergebnis nachzuvollziehen muss der Befehl ohne Punkt
eingegeben werden. Ist lediglich von einem Befehl die Rede, ohne dass er ausgeführt wird ändert
sich lediglich die Schriftart.
4
1 Grundlagen Es gibt z.Zt. drei unterschiedliche Versionen von STATA (Small Stata, Intercooled STATA,
STATA/SE)1 die sich in ihrer Leistungsfähigkeit und ihrem Preis unterscheiden. Small Stata reicht
zwar für kleine Forschungsprojekte von Studenten, für Studenten gibt es seit neuestem aber auch
eine Studentenversion der Vollversion von STATA2. Die Studentenversion ist im Gegensatz zum
SPSS nicht zeitbeschränkt.
STATA wird ständig weiterentwickelt und ein Update bei neuen Versionen ist kostenlos möglich.
Daher sollte nach der ersten Installation der Befehl . query update
ausgeführt werden. STATA ist für alle gängigen Betriebssysteme erhältlich (Windows, Macintosh,
Unix).
1.1 Das Programm
Nach der ersten Installation zeigt sich auf dem Desktop folgendes Bild. Die Oberfläche von STATA
erscheint im Vergleich zu anderen Windows Programmen ungewohnt, da das Programm im
Gegensatz zu herkömmlichen Windows Programmen aus verschiedenen Fenstern besteht.
Nach einigem hin und herschieben der Fenster erhält man allerdings einer sehr komfortable
Oberfläche:
Abbildung 1 STATA nach dem Start Abbildung 2 So s ollte es aussehen
STATA in der Version 8.x hat verschiedene Komponenten (Fenster):
1. Das Stata Results Fenster (Hier werden alle eingegebenen Befehle angezeigt sowie deren
Ausgaben ausschließlich der Grafikbefehle)
1 Leistungsmerkmale: Small STATA (u.a. 1000 Beobachtungen und 99 Variablen), Intercooled STATA (u.a.
2047 Variablen), STATA/SE (u.a. 32,767 Variablen). Quelle: www.stata.com/info/windows.html (Zugriff
10.4.2004). 2 Erhältlich inklusive Getting Started Manual u.a. bei www.dpc.de für 129€ plus Versandkosten. Quelle:
www.dpc.de (Zugriff 10.4.2004).
5
2. Grafiken werden im Fenster Stata Graph ausgegeben (es öffnet sich erst nach Erstellen
einer Grafik).
3. Im Fenster Review werden alle von eingeben Befehle angezeigt.
4. Im Fenster Variables werden die Variablen des Datensatzes angezeigt.
5. Eingaben können in Stata 8 sowohl „per Hand“ im Fenster Stata Command oder über die
Menüleiste per Dialogfeld eingegeben werden. Die Eingabe per Menu wird in diesen
Skript nur exemplarisch behandelt. Die Eingabe von Hand mag zwar gewöhnungsbedürftig
sein, ist aber aufgrund der sehr guten SYNTAX von STATA flexibler und schneller.
6. Der Stata Viewer hiermit können Logfiles und Helpfiles geöffnet werden. Er funktioniert
ähnlich wie ein Webbrowser (z.B. Internet Explorer). In der Adressleiste wird die Datei
eingegeben die geöffnet werden soll.
7. Der Stata Editor für Daten. Hier kann der geöffnete Datensatz bzgl. Form und Inhalt
bearbeitet oder neue Daten eingegeben werden.
8. Der Stata Do-file Editor hilft beim Erstellen eigener Befehlsfolgen. Eingegebene Befehle
können hierhin kopiert werden. Es verhält sich wie ein Textbearbeitungsprogramm, ohne
Formatierungsmöglichkeiten. Aus ihm heraus lassen sich die Eingaben aber sofort
ausführen.
Mit Hilfe der Tastenkombination Strg+1..8 kann man die Fenster aufrufen, sollten sie verdeckt sein.
Abbildung 3
1.2 Der Datensatz
Daten aus standardisierte sozialwissenschaftlicher Forschung liegen in den unterschiedlichsten
Formen vor (schriftliche Fragebögen, Tabellen die einer statistischen Analyse unterzogen, Daten
aus Computer Assisted Telephone Interviews oder Computer Assisted Personal Interviews). Um
sie mit dem Hilfsmittel Computer auszuwerten benötigt man eine standardisierte Form. Hierzu
werden die Informationen in einen Datensatz recodiert.
Man kann ihn sich am besten als eine große - im Computer gespeicherte - Tabelle vorstellen. Die
einzelnen Fälle (z.B. Befragte Personen, Haushalte, etc. ) bilden dabei die Zeilen der Tabelle, jede
Information (Variablenausprägung) die von den Fällen aufgenommen worden ist (z.B. ob der
Befragte Ost oder Westdeutscher ist) tauchen als jeweils eine Spalte in der Tabelle auf. Die
Datensätze von Stata haben die Dateiendung .dta und werden durch den Befehl
6
. use "C:\MeinStataOrdner\MeinDatensatz.dta"
oder per Menü geöffnet.
Hierbei kann es passieren, dass Stata eine Fehlermeldung ausgibt weil der Datenspeicher kleiner
als der Datensatz ist. Die triviale Lösung ist hier den Daten einfach mehr Speicher zuzuweisen,
dies geschieht mit folgendem Befehl (die Option permanent weist stata an, jedes Mal diese
Speichergröße zuzuweisen) . set memory 40m, permanent
der den Daten 40MB (der Umfang von 27 Disketten) zuweist. Dies sollte für die meisten
Datensätze genügen. Es empfiehlt sich aber den Speicher den Daten anzupassen, um die
Rechenleistung von Stata zu erhöhen (Stata benutzt vorrangig den Arbeitsspeicher und ist
dadurch schneller als andere Statistik-Programme).
2 Die grundlegende Syntax von Stata Ein großer Vorteil von Stata ist seine verhältnismäßig einfache Syntax (dies ist die Befehlssprache
mit der man Stata mitteilt was es tun soll). Befehle werden im Fenster Stata Command eingeben
oder in Form eines sogenannten Do-Files ausgeführt. Letzterer ist das gleiche wie eine SPSS
Syntax Datei, also eine Sammlung von Befehlen und Kommentaren die mit dem Befehl . do DOFILE.do
auf einmal ausgeführt werden können. Nähere Informationen zu Do-Files folgen später in dieser
Arbeit.
Im Folgenden werden einige grundlegende Befehle vorgestellt, um die Syntax von Stata zu
verstehen. Um zu erfahren wie der Stata Befehl für eine statistische oder sonstige Operation von
Stata lautet verwendet man den Befehl . search STICHWORT
für „cross-table“ (Kreuztabelle) liefert Stata z.B. folgende Ausgabe: . search cross-table Keyword search Keywords: Cross-table Search: (1) Official help files, FAQs, Examples, SJs, and STBs Search of official help files, FAQs, Examples, SJs, and STBs [R] tabsum . . . . . . . . One- and two-way tables of summary statistics (help tabsum) [R] tabulate . . . . . . . . . . . One- and two-way tables of frequencies (help tabulate) [XT] xttab . . . . . . . . . . . . . . . . . . . . . . . . Tabulate xt data (help xttab)
[...]
daraus wird ersichtlich, dass das gesuchte Kommando tabulate ist. Zudem werden alle anderen
Kommandos aufgelistet in deren Name oder Beschreibung das Stichwort auftaucht. Die
7
Buchstaben in den eckigen Klammern deuten das Buch der Stata Dokumentation (siehe
Literaturliste) an, in dem der entsprechende Befehl erläutert ist.
Um die genaue Syntax für die Anwendung eines Befehls darzustellen hilft der Befehl . help tabulate ------------------------------------------------------------------------------------------------- help for tabulate, tabi manual: [R] tabulate tab1, tab2, one-way dialogs: tabulate generate() tab1 two-way dialogs: tabulate tab2 tabi ------------------------------------------------------------------------------------------------- One- and two-way tables of frequencies One-way tables: tabulate varname [weight] [if exp] [in range] [, generate(varname) matcell(matname) matrow(matname) missing nofreq nolabel plot sort subpop(varname) ] […]
Die meisten Befehle in Stata bestehen aus folgenden Bausteinen. Die sich auch in der Ausgabe
der Hilfe zum Befehl tabulate wiederfinden (optionale Elemente stehen in eckigen Klammern):
<Befehl> <Variablenname> [[Gewichtung]] [if - Bedin gung] [in - Bedingung] , [Befehlsoptionen]
Die optionalen Elemente sind (fast) beliebig kombinierbar. In der Option Gewichtung können
optionale Gewichtungsvariablen eingesetzt werden, die if Bedingung wendet den Befehl nur auf
Fälle an, die eine bestimmte Bedingung erfüllen (z.B. Einkommen>1000) und die in Bedingung
sagt auf welche Fälle im Datensatz der Befehl angewendet werden soll (z.B. in 1/10 für die ersten
zehn Fälle) .3
Die meisten Befehle lassen sich zudem abkürzen (z.B. tabulate mit tab), dies vereinfacht die Arbeit
mit der Syntax stark.4 In der Hilfe zu Befehlen sind zulässige Abkürzungen durch
Unterstreichungen gekennzeichnet. Auch Nummernlisten lassen sich in Stata abkürzen (z.B.
1(1)10 für die Zahlen von 1 bis 10).5
Sollte man einen Befehl trotz korrekter Übersetzung6 nicht finden so kann man zudem die Internet
Ressourcen von Stata danach durchsuchen. Hier finden sich ergänzende Befehle die von Stata
Usern geschrieben und veröffentlicht wurden, aber kein Teil der offiziellen Stata Distribution sind.
Sucht man z.B. den Befehl für das Zusammenhangsmaß Lambda gibt man dafür . net search lambda
ein und erhält folgende Ausgabe:
3 Siehe help syntax. 4 Weitere Infos für Variablen erhält man durch Eingabe von help varlist. 5 Siehe help numlist. 6 http://dict.leo.org ist dafür eine Hilfreiche Webadresse.
8
. net search lambda (contacting http://www.stata.com) 6 packages found (Stata Journal and STB listed first) ----------------------------------------------------- lambda from http://fmwww.bc.edu/RePEc/bocode/l 'LAMBDA': module for Goodman and Kruskal's lambda measures for two-way tables / lambda cross-tabulates two variables and treats them as nominal / variables for calculation of Goodman and Kruskal's lambda / measures of association (JASA 1954). / Distribution-Date: 20031119 / Author: Nicholas [...]
durch Eingabe von . net install lambda
kann man das gewünschte Paket installieren. Es steht fortan bei Eingabe von Lambda zur
Verfügung, ebenso die wird die Hilfe zum neuen Befehl installiert.
3 Das Hauptprogramm Um die grundlegenden Eigenschaften von Stata zu demonstrieren, wird im Folgenden der
Datensatz AllBUS 2002 verwendet7. Dies ist der gleiche Datensatz, der auch in der VL Statistik am
IfS verwendet wird. Zuerst werden Befehle zur Datensichtung vorgestellt, anschließend Befehle
zur Dateneingabe und schließlich Befehle zur Datenbearbeitung.
3.1 Datensichtung
Zur Sichtung der Daten im aktuell geladenen Datensatz gibt einige wenige grundlegende Befehle,
die alle entweder auf ausgewählte Variablen oder auf alle Variablen im Datensatz angewendet
werden können. Wird lediglich der Befehl eingegeben wird dies von STATA als Aufforderung zur
Anwendung auf alle Variablen interpretiert. Im folgenden werden die Befehle auf die drei Variablen
Erhebungsgebiet (V4), Geschlecht (V182) und Nettoeinkommen (V361) angewendet.
Der folgende Befehl gibt die Variablen samt Variablenlabel und Wertelabel aus. Zudem beschreibt
er den Datensatz allgemein in Bezug auf Größe, Datensatzlabel und Anzahl der Beobachtungen
(sofern er nicht wie hier auf einzelne Variablen eingeschränkt wurde). . d V4 V182 V361 storage display value variable name type format label variable label ------------------------------------------------------------------------------- V4 byte %8.0g V4 DEUTSCHE STAATSANGEHOERIGKEIT? V182 byte %8.0g V182 GESCHLECHT, BEFRAGTE<R> V361 int %8.0g V361 BFR.:NETTOEINKOMMEN<OFFENE+LIST ENANGABE>
Eine wichtige Ergänzung hierzu ist der Befehl lookfor. Möchte man beispielsweise wissen,
welche Variablen im Datensatz Informationen zum Einkommen erhalten, gibt man folgenden
Befehl ein:
7 Mit der Allgemeinen Bevölkerungsumfrage der Sozialwissenschaften (ALLBUS) werden aktuelle Daten
über Einstellungen, Verhaltensweisen und Sozialstruktur der Bevölkerung in der Bundesrepublik
Deutschland erhoben. Seit 1980 wird alle zwei Jahre ein repräsentativer Querschnitt der Bevölkerung mit
einem teils stetigen, teils variablen Fragenprogramm befragt. Die Daten stehen unmittelbar nach ihrer
benutzergerechten Aufbereitung und Dokumentation allen Interessenten für Forschung und Lehre zur
Verfügung. Sie sind über www.gesis.org zu beziehen.
9
. lookfor Einkommen storage display value variable name type format label variable label ------------------------------------------------------------------------------- V361 int %8.0g V361 BFR.:NETTOEINKOMMEN<OFFENE+LIST ENANGABE> V362 byte %8.0g V362 NETTOEINKOMMEN<OFFENE+LISTENANG ABE>,KAT. V441 int %8.0g V441 HAUSHALTSEINKOMMEN <OFFENE+LISTENANGABE>
Dies sind alle Variablen in deren Variablennamen oder Variablenlabel der Begriff Einkommen
vorkommt.
Der folgende Befehl gibt eine vertiefte Beschreibung der Variablen im Datensatz. Hier werden
exemplarisch einige Wertelabels ausgegeben samt Häufigkeiten und zugehörigem Wert. . codebook V4 ------------------------------------------------------------------------------------------------- V4 DEUTSCHE STAATSANGEHOERIGKEIT? ------------------------------------------------------------------------------------------------- type: numeric (byte) label: V4 range: [1,2] units: 1 unique values: 2 missing .: 1/2820 tabulation: Freq. Numeric Label 2698 1 JA 121 2 NEIN 1 .
Für eine Auflistung aller Werte und labels gibt man den Befehl label list ein. Er ist ebenfalls auf
einzelne oder alle Labels anwendbar. Für eine Übersicht der Verteilung von Werten der Variablen
gibt es u.a. den Befehl inspect, er liefert ein kleines Histogramm zu allen Variablen. Dies führt zur
zweiten Art von Befehlen, die Übersichten über die Merkmalsausprägungen geben. Der folgende
Befehl sollte immer mit dem der IN-Bedingung verwendet werden, weil die Ausgabe sonst viele
Seiten füllen kann (sofern man sie nicht mit der Tastenkombination STRG+Untbr abbricht). Im
folgenden wurde die Ausgabe daher auf die ersten zehn Fälle beschränkt. . list V4 V182 V361 in 1/10 +--------------------+ | V4 V182 V361 | |--------------------| 1. | JA MANN 1750 | 2. | JA FRAU 1600 | 3. | JA FRAU 1600 | 4. | JA FRAU 1900 | 5. | JA FRAU 950 | |--------------------| 6. | JA FRAU 500 | 7. | JA FRAU . | 8. | JA FRAU . | 9. | JA MANN 1400 | 10. | NEIN FRAU . | +--------------------+
Für eine Übersicht über die Beschreibung von Verteilungen mit Stata siehe Kapitel 4.
3.2 Dateneingabe
Daten können mit stata sowohl per Syntax als auch über ein spezielle Dateneingabe Modul
(ähnlich dem Dateneditor im SPSS) eingegeben werden. Im folgenden sollen beide Wege kurz
erläutert werden.
An dieser Stelle ist es sinnvoll zwei Befehle zur Sicherung und Wiederherstellung des Datensatzes
vorzustellen, da hier zum ersten Mal unwiederbringliche Änderungen am Datensatz vorgenommen
10
werden. Der Befehl preserve sichert den aktuellen Inhalt des Datensatzes und restore stellt
einen zuvor gesicherten Zustand wieder her.
Über den Befehl input kann man Daten eingeben beispielsweise . input x y z . 1 2 3 . 4 5 6 . end
der Punkt vor jeder Zeile deutet an, dass die jeweiligen Zeilen mit der Taste ENTER/RETURN
abgeschlossen werden müssen.
Wertelabels können in stata besonders komfortabel verwendet werden.8 Sie werden getrennt von
den Daten gespeichert werden. Durch den Befehl . label define janein 1 "Ja" 0 "Nein"
wird das Label janein erstellt wobei dem 1 Ja und dem Wert 0 Nein als Label zugewiesen wird.
Dieses Label kann nun einer beliebigen Liste von Variablen zugewiesen werden oder zur späteren
Verwendung in einem DO-File (s.u.) gespeichert werden. Der Befehl . label value x janein
weist der Variable x das Label janein zu.
Der Dateneditor von Stata wird mit dem Befehl edit aufgerufen.
Abbildung 4
Durch Doppelklick auf die Namen der Variablen (Vorzeile) lassen sich die Eigenschaften der
Variablen ändern, durch Klick in die Zellen ihre Ausprägungen. Nach dem schließen des Daten
Editors muss man die vorgenommenen Änderungen akzeptieren9, bevor sie wirksam werden.
Nach der Erzeugung von neuen Variablen sollte man die Variablen und damit den Datensatz
optimieren um Speicherplatz zu sparen, dies geschieht mit dem Befehl compress.
8 Die wichtigsten Befehle zur Verwendung von Labels in stata werden durch die Eingabe von help labels
aufgeführt. 9 Es erscheint eine Dialogbox in der man die Veränderungen am Datensatz entweder bestätigen (OK) oder
verwerfen kann (ABBRUCH).
11
Liegen die Daten bereits in Form einer Wertetabelle vor bietet Stata volle Unterstützung für drag
and drop unter Windows. D.h. man kann die ganze Tabelle markieren (z.B. aus MS WORD oder
dem Adobe Acrobat Reader) und kopieren, und klickt dann einfach mit der rechten Maustaste in
den leeren Daten-Editor von Stata und wählt Einfügen aus dem Menu. Als Ergebnis liefert Stata
die Fälle mit Variablenlabel (erste Zeile der Tabelle) und passendem Variablennamen.
3.3 Daten bearbeiten (rekodieren)
Um automatisch (für alle Fälle Werte zuweisen) Variablen zu erstellen oder die Werte von
Variablen zu verändern gibt es in Stata drei grundlegende Befehle generate, egen und
replace.
Mit dem Befehlen generate und egen lassen sich Neue Variablen erzeugen. Ihre Leistung soll
an folgendem kleinem Beispiel gezeigt werden mit dem eine Dummy Variable für das Geschlecht
Frau aus dem AllBUS 2002 erstellt wird: . generate frau=0 if V182==1 . replace frau=1 if V182==2 (1423 real changes made)
Hier wurde erst die Variable für die Männer erstellt und ihr Wert anschließend für die Frauen
verändert. Nach der ersten Eingabe war die Ausprägung der Frauen bei frau=. , dies ist Statas
Repräsentation von Missing Values (intern zählt der Wert als größer plus unendlich, also
aufpassen bei relationalen [>==|<] Operationen).
Der Befehl egen wirkt wie generate erlaubt jedoch zusätzliche Funktionen bei der
Variablenkonstruktion.10
10 Für die Liste der möglichen Funktionen beim Erzeugen siehe help generate, egen, operator und
function.
12
4 DO Files – Mehrere Befehle auf einmal ausführen
Wie bereits erwähnt stellt der Do-File Editor ein eigenes Modul des Programms stata dar. Er
ermöglicht dem Benutzer indirekt mit dem Programm zu kommunizieren und ihm mehrere
Anweisungen zugleich ausführen zu lassen, ohne die Menuführung zu benutzen oder die Befehle
einzeln einzugeben.
Gerade erfahrene Benutzer schätzen diese Möglichkeit, weil sich dadurch viel Zeit sparen lässt.
Hierzu muss man allerdings eine eigene standardisierte Sprache lernen, die von der einige Befehle
bereits vorgestellt wurden. Sie ist im Vergleich zu Sprachen anderer Statistik Pakete wie SPSS®
sehr komfortabel zu erlernen.
Die Anweisungen lassen sich mit Hilfe des Editors speichern und aus anderen Do-Files oder aus
dem Stata Command Fenster heraus ausführen. Mit do DOFILE.do werden die Befehle mit
Ausgabe ausgeführt mit run DOFILE.do werden sie ohne Ausgabe im result-Fenster
ausgeführt. Mehr zur Organisation der Arbeit mit Do-Files finden Sie im Kohler/Kreuter11.
Es ist auch möglich Syntax in anderen Texteditoren wie z.B. Ultraedit zu verfassen und als .do
Datei zu speichern. Texteditoren unterstützen die Arbeit durch sog. syntax highlighting dabei
werden Befehle Kommentare und konstanten mit unterschiedlichen Farben dargestellt.
Erstellt man einen umfangreichen Do-File z.B. im Rahmen eines Regressionsmodells so empfiehlt
sich augenscheinlich eine thematische Gliederung der Arbeit in die chronologischen
Arbeitsschritte. Durch Kommentare wird das Do-File übersichtlicher, es gibt zwei Arten von
Kommentaren in stata: * AUSKOMMENTIERUNG EINER EINZIGEN ZEILE, geht auch über das Command Fenster /* AUSKOMMENTIERUNG MEHRERER ZEILEN */
Um die interaktive Arbeit mit Stata zu dokumentieren gibt es zwei Möglichkeiten, vergleichbar mit
den SPSS Journaldateien. Der Befehl . log using ausgabeundergebnisse.log --------------------------------------------------------------------------------------------------- log: C:\Dokumente und Einstellungen\Lars\Eigene Dateien\Daten\ausgabeundergebnisse.log log type: text opened on: 17 May 2004, 21:07:25 . log using ausgabeundergebnisse.smcl --------------------------------------------------------------------------------------------------- log: C:\Dokumente und Einstellungen\Lars\Eigene Dateien\Daten\ausgabeundergebnisse.smcl log type: smcl opened on: 17 May 2004, 21:07:08
Durch die Dateiendung .log oder .smcl Wird der Typ der Datei gespeichert, eine .log Datei ist von
allen Programmen lesbar, ermöglicht aber keine Formatierung. Das Format .smcl ist nur von Stata
zu lesen ermöglicht aber Formate.
11 Kohler/Kreuter 2001.
13
5 Deskriptive Statistik
Im folgenden sollen einige Standardbefehle der Datenanalyse kurz vorgestellt werden. Sie stellen
kein annähernd umfassendes Kompendium dar, stehen aber am Anfang der meisten Analysen
unbekannter Datensätze um ihre Komplexität überschaubar zu machen.
5.1 Numerische Verfahren
a) Univariate Statistik
Um die Verteilung der Ausprägungen einer Variable kennen zu lernen, gibt es verschiedene
Möglichkeiten von denen hier zwei kurz vorgestellt werden.
• Eine Häufigkeitstabelle erstellen
Verschafft einen ersten Überblick über die Verteilung der Ausprägungen einer Variable. Ist jedoch
nur bei kategorialen Variablen sinnvoll. Bei metrischen Variablen erhält man im schlechtesten Fall
so viele Zeilen wie es Fälle gibt in der Häufigkeitstabelle. . tabulate V3 ERHEBUNGSGEBIET: | WEST - OST | Freq. Percent Cum. -------------------+----------------------------------- ALTE BUNDESLAENDER | 1,934 68.58 68.58 NEUE BUNDESLAENDER | 886 31.42 100.00 -------------------+----------------------------------- Total | 2,820 100.00
• Einfache Lagemasse
Man kann sich mit dem folgenden Befehl einen umfassenderen Eindruck über die Verteilung der
Werte (nicht der Ausprägung) einer einzelnen Variablen machen. Einige Teile der Ausgabe
machen jedoch nur für metrisches Skalenniveau Sinn. Eine kürzere Darstellung erhält man ohne
die Option detail, mit der Option gen(VARNAME) lassen sich Dummyvariablen für jede
Ausprägung erzeugen. . sum V361, detail BFR.:NETTOEINKOMMEN<OFFENE+LISTENANGABE> ------------------------------------------------------------- Percentiles Smallest 1% 150 50 5% 300 50 10% 400 58 Obs 2239 25% 700 60 Sum of Wgt. 2239 50% 1182 Mean 1388.426 Largest Std. Dev. 1183.18 75% 1700 15000 90% 2500 15000 Variance 1399914 95% 3460 15000 Skewness 4.605143 99% 5500 15200 Kurtosis 42.5315
• Graphische Verfahren
Für einen Überblick über die univariate Verteilung der Ausprägungen einer Variablen eignet sich
das Histogramm. Auch in Stata werden keine unterschiedlichen Intervallbreiten für metrische
14
Variablen, es erfüllt aber trotzdem das Prinzip der Flächentreue. Die Anzahl oder Breite der
Kategorien lassen sich durch Optionen anpassen.12
Im folgenden werden zwei Histogramme für jeweils eine metrische (Einkommen) und eine ordinale
Variable (Religiosität) dargestellt. Der Befehl ist zudem „by-able“, d.h. mit der Option
by(VARNAME) kann man die Verteilungen innerhalb von Gruppen einer unabhängigen Variable
darstellen (z.B. Geschlecht). . histogram V124, width(1) . histogram V361
0.0
5.1
.15
.2.2
5De
nsity
0 2 4 6 8 10RELIGIOSITAETSSKALA, BEFRAGTE<R>
0
2.0e
-04
4.0e
-04
6.0e
-04
Dens
ity0 5000 10000 15000
BFR.:NETTOEINKOMMEN<OFFENE+LISTENANGABE>
Abbildung 5 Abbildung 6
Durch den Befehl13 graph export DATEINAME.tif lässt sich jede Grafik aus Stata Bild speichern, um
sie beispielsweise in MS WORD zu verwenden. Durch einen Rechtsklick mit der Maus lässt sich
die Ausgabe auch direkt kopieren bzw. speichern.
Mit der Funktion kdensity14 stellt stata einen zusätzlichen Kerndichteschätzer zur Verfügung. Er
ermöglicht einen feineren Eindruck über die univariate Verteilung eines metrischen, nicht
kategorialen Merkmals. Hier wird der Kern Dichte Schätze für das Einkommen Vollzeitbeschäftigter
dargestellt.
0.0
002
.000
4.0
006
.000
8De
nsity
0 5000 10000 15000BFR.:NETTOEINKOMMEN<OFFENE+LISTENANGABE>
Abbildung 7
12 Siehe help histogram. 13 Sollte direkt nach dem Grafikbefehl ausgeführt werden. 14 Für eine Beschreibung der mathematischen Grundlagen dieses Befehls kann man im entsprechen Stata
Manual nachschlagen (hier Stata Reference Manual zu kdensity).
15
b) Bivariate Statistik
Zur Darstellung von Zusammenhängen zwischen zwei oder mehr Variablen gibt es viele Methoden
die deren Verwendung u.a. vom Messniveau und der Variablen abhängen.
• Erstellen von Kreuztabellen
Hier werden nicht einzelne Informationen von Gruppen verglichen wie beim vergleichen von
Mittelwerten, sondern die Verteilung der Fälle in Gruppen von Merkmalskombinationen dargestellt.
Gleichzeitig können für diese Verteilung bereits statistische Tests der Tabellenanalyse
durchgeführt werden (Wie z.B. der χ² Test auf statistische Unabhängigkeit). Die verwendeten
Variablen müssen für eine sinnvolle Darstellung kategorial sein. Entsprechend dem Standard
kommen in die Spalten die unabhängigen Variablen, in die Zeilen die abhängigen Variablen.
Prozente werden dabei zeilenweise angegeben (Zeilensumme der Prozente 100, Spaltensumme
Anteil der Kategorie an allen Kategorien).
In der folgenden Tabelle soll die Religiosität von Männern und Frauen verglichen werden. Die
Hypothese H0 ist, dass das Geschlecht einen Einfluss auf die Religiosität von Personen hat.
Überprüft wird dies anhand der Maßzahl Cramers V. . tab V124 V182,row nof V | GESCHLECHT, RELIGIOSITAETSSKAL | BEFRAGTE<R> A, BEFRAGTE<R> | 1. MANN 2. FRAU | Total -------------------+----------------------+---------- 1. NICHT RELIGIOES | 54.99 45.01 | 100.00 2. .. | 55.83 44.17 | 100.00 3. .. | 61.29 38.71 | 100.00 4. .. | 63.30 36.70 | 100.00 5. .. | 43.18 56.82 | 100.00 6. .. | 47.83 52.17 | 100.00 7. .. | 43.23 56.77 | 100.00 8. .. | 47.40 52.60 | 100.00 9. .. | 40.41 59.59 | 100.00 10. RELIGIOES | 39.62 60.38 | 100.00 -------------------+----------------------+---------- Total | 49.50 50.50 | 100.00 Cramér's V = 0.1449
Die Option row gibt an, dass Zeilenprozente angegeben werden sollen. Die Option nof unterdrückt
die Ausgabe der absoluten Häufigkeiten und V gibt an, dass Cramers V ausgeben werden soll.
• Mittelwerte vergleichen
Hier werden Mittelwerte von Gruppen und Subgruppen verglichen. Die Darstellung erfolgt in
Kreuztabellen. Die Zellinhalte repräsentieren die Mittelwerte der Merkmalskombinationen. Der
Befehl table stellt neben Mittelwerten noch andere Maße wie den Median bereit, die unter help
table eingesehen werden können. Um sich die Mittelwerte für das Einkommen nach Geschlecht
und Erwerbsstatus ausgeben zu lassen wird folgender Befehl verwendet.
16
. table V200 V182 , c(mean V361) --------------------------------------- | GESCHLECHT, BEFRAGTE<R> | BEFRAGTE<R> BERUFSTAETIG? | MANN FRAU ---------------------+----------------- HAUPTBERUFL.GANZTAGS | 2002.68 1463.07 HAUPTBERUFL.HALBTAGS | 1752.57 845.016 NEBENHER BERUFSTAE. | 796.487 506.456 NICHT ERWERBSTAETIG | 1219.81 813.03 ---------------------------------------
Die Inhalte der Zellen werden mit c(Maß VARIABLE) für content angegeben.
• Graphische Verfahren
Auch in Stata werden die verbreiteten Typen boxplot und scatterplot bereitgestellt. Im folgenden
werden kurz zwei Anwendungsmöglichkeiten dargestellt. Hierbei zeigt sich die Flexibilität der
Syntax in Stata durch die Möglichkeiten Einschlusskriterien und Subgruppen zu definieren.
Der Boxplot als ein graphisches Komplement zum Tabellarischen Mittelwertvergleich benutzt statt
des arithmetischen Mittels den Median. In der folgenden Grafik sollen die gleichen Informationen
wie in der obigen Mittelwerttabelle zum Einkommen dargestellt werden.
05,
000
10,00
015
,000
BFR.
:NET
TOEI
NKOM
MEN
<OFF
ENE+
LISTE
NANG
ABE>
MANN FRAU
1 2 3 4 1 2 3 4
Abbildung 8
Mit einem Streudiagramm soll die geschlechtsspezifische Verteilung der Einkommen Vollzeit-
beschäftigter dargestellt werden. In der zweiten Abbildung wird die Verteilung in einem Sunflower
plot dargestellt (10 Beobachtungen pro Blatt). scatter V361 V185 if V200==1, by(V182) sunflower V361 V185 if V200==1, by(V182) petalw(5)
050
0010
000
1500
0
20 40 60 80 20 40 60 80
MANN FRAU
BFR.
:NET
TOEI
NKOM
MEN<
OFFE
NE+L
ISTE
NANG
ABE>
ALTER: BEFRAGTE<R>Graphs by GESCHLECHT, BEFRAGTE<R>
050
0010
000
1500
0
20 40 60 80 100 20 40 60 80 100
MANN FRAU
BFR.:NETTOEINKOMMEN<OFFENE+LISTENANGABE> 1 petal = 1 obs.1 petal = 5 obs.
BFR.
:NET
TOEI
NKOM
MEN<
OFFE
NE+L
ISTE
NANG
ABE>
ALTER: BEFRAGTE<R>
Graphs by GESCHLECHT, BEFRAGTE<R>
Abbildung 9 Abbildung 10
17
Ist man an der (approximativen) linearen Form eines bivariaten Zusammenhangs interessiert bietet
sich ein sog. smoother an. Er rechnet anhand vieler lokaler Regressionen eine Funktion, die den
Zusammenhang bestmöglich darstellt. Der Befehl ist jedoch sehr Rechenintensiv und benötigt
einige Zeit: .lowess V361 V185 if V200==1, by(V182) msymbol(i)
Abbildung 11
Die Darstellung ließe sich mit komplizierterer Syntax auch noch in einen Graphen legen, darauf
wird hier verzichtet. Die Option msymbol(i) unterdrückt die Darstellung der Punkte des
Streudiagramms.
6 Statistisches Testen und Schätzen
Hier sollen nur kurz die Befehle für den verschiedenen statistischen Tests dargestellt werden. Um
Mittelwerte zu testen oder zu vergleichen wird die Funktion ttest verwendet. Testet man einen
Hypothetischen Mittelwert wird die Syntax ttest VAR==WERT verwendet. Testet man Differenzenzen
zwischen Gruppen wird die Syntax ttest VAR1==VAR2, unequal unpaired verwendet. Die Optionen
gegeben hier an, dass die Varianz beider Gruppen ungleich ist (unequal) und dass es sich um eine
unabhängige Stichprobe handelt (unpaired). Trifft dies nicht zu, werden die entsprechenden
Optionen einfach weggelassen.
Der F-Test auf gleiche Varianzen wird mit der Funktion robvar VARNAME, by(GRUPPENVARIABLE)
durchgeführt. Dieser Test stellt gleich drei robuste Tests auf gleiche Varianzen zur Verfügung.
Konfidenzintervalle für Mittelwerte lassen sich über ci VARNAME ausgeben.
050
0010
000
1500
0
20 40 60 80 20 40 60 80
MANN FRAU
BFR.
:NET
TOEI
NKOM
MEN<
OFFE
NE+L
ISTE
NANG
ABE>
ALTER: BEFRAGTE<R> bandwidth = .8
Lowess smoother
18
7 Die Modellierung von Zusammenhängen
Die Untersuchung von Zusammenhängen erfordert eine theoretische Fundierung. Ihr muss eine
theoretische Vorstellung der kausalen Zusammenhänge zwischen Variablen zugrunde liegen. 15
Es gibt viele Möglichkeiten multivariate Zusammenhänge zu quantifizieren im folgenden werden
kurz die beiden verbreiteten Verfahren multiple und logistische Regression dargestellt ohne auf
ihre Anwendungsvoraussetzungen einzugehen.
7.1 Lineare Multiple Regression mit Stata
Die multiple Regression wird in Statistik 2 eingeführt, die bivariate Regression funktioniert
bezüglich Syntax und Ausgabe aber genauso wie die multiple.
a) Regression
Mit folgendem Kommando wird ein Regressionsmodell für das Einkommen (abhängige Variable,
V361) und Alter (V185), Hochschulabschluss (V197), Geschlecht (men, recodiert) und
Berufstätigkeit (V200) erstellt. Geschlecht wurde dazu in Mann (J/N) umkodiert. . regress V361 V185 men V197 V200 Source | SS df MS Number of obs = 2225 -------------+------------------------------ F( 4, 2220) = 212.48 Model | 857182583 4 214295646 Prob > F = 0.0000 Residual | 2.2390e+09 2220 1008550.25 R-squared = 0.2769 -------------+------------------------------ Adj R-squared = 0.2756 Total | 3.0962e+09 2224 1392160.13 Root MSE = 1004.3 ------------------------------------------------------------------------------ V361 | Coef. Std. Err. t P>|t| [95% Conf. Interval] -------------+---------------------------------------------------------------- V185 | 17.77313 1.497443 11.87 0.000 14.83659 20.70966 men | 522.8522 43.2038 12.10 0.000 438.1281 607.5763 V197 | 913.0004 66.83329 13.66 0.000 781.9381 1044.063 V200 | -322.7007 18.20692 -17.72 0.000 -358.4051 -286.9964 _cons | 904.0717 69.7902 12.95 0.000 767.2108 1040.933 ------------------------------------------------------------------------------
Hier tauchen alle wesentlichen Informationen zum Modell auf.
b) Regressionsdiagnostik
Stata bietet eine sehr komfortable Regressionsdiagnostik (Überprüfung der
Anwendungsvoraussetzungen und Optimierung des Modells) auf die hier kaum eingegangen
werden kann. Die Zugehörigen Befehle sollen nur tabellarisch vorgestellt werden.16
Die Befehle beziehen sich auf das jeweils vorangegangene Modell:
Befehl Wirkung
rvfplot Plotted Residuen gegen
avplot
Plotted die bivariaten Zusammenhänge zwischen
abhängiger unabhängigen Variablen.
cprplot UVAR
Plotted die Residuen des Modells für metrische
unabhängige Variablen (UVAR)
vif Test auf Multikollinearität für alle unabhängigen
15 Siehe dazu das Skript zur VL. 16 Mehr unter help regdiag.
19
Variablen.
predict
Erstellt eine Variable mit Vorhergesagten Werten des
Modells. Diese können durch die if-Bedingung
beeinflusst werden. Zudem können hier Residuen für
das Modell gespeichert werden.
7.2 Logistische Regression mit Stata
a) Regression
Im folgenden soll nun anhand der gleichen Variablen wie oben vorhergesagt werden, ob der
Befragte ein Mann ist. Gibt man logit anstatt logistic ein, erhält man die Koeffizienten statt der
Odds Ratios. . logistic men V361 V185 V197 V200 Logistic regression Number of obs = 2225 LR chi2(4) = 278.60 Prob > chi2 = 0.0000 Log likelihood = -1397.4075 Pseudo R2 = 0.0906 ------------------------------------------------------------------------------ men | Odds Ratio Std. Err. z P>|z| [95% Conf. Interval] -------------+---------------------------------------------------------------- V361 | 1.001013 .0000798 12.71 0.000 1.000857 1.00117 V185 | .9885599 .0033155 -3.43 0.001 .9820829 .9950797 V197 | .5512516 .0858613 -3.82 0.000 .4062275 .7480497 V200 | 1.060676 .0462873 1.35 0.177 .9737264 1.155391 ------------------------------------------------------------------------------
b) Regressionsdiagnostik
Hier eine kurze Liste der Befehle zur Diagnostik der Logistischen Regression:
Befehl Wirkung
lstat Liefert die Klassifikationstabelle
lfit Liefert den Chi² Anpassungstest des Modells
lroc Plotted Sensitivität gegenüber 1-Spezifität.
Weiterführende Informationen finden sich im Stata Reference Manual.
8 Sonderfälle
• Mehrfachantworten Fragen, bei denen mehrere Antworten möglich sind, entweder festgelegte Anzahl (z.B. 3) oder alle.
Werden als Mehrfachantworten bezeichnet.
• Bsp.: Welche Zeitungen lesen Sie: FAZ, Bild, SZ?
Hier wird jede Ausprägung als einzelnen 0/1 codiert ist (Codierung mit 0 (nein) und 1 (ja))
• Bsp.: Befragter liest SZ Ja, usw.
Stata stellt hierzu standardmäßig keine besondere Funktionen bereit, es existiert jedoch ein Ado
namens mrtab, mit dem sich Mehrfachantworten komfortabel tabellieren lassen. Bezug über: . net install mrtab
20
• Fehlende Werte Das Fehlen einzelner Werte kommt nahezu in jedem Datensatz vor. Dies kann zu Problemen
führen bei der Auswertung führen, daher ist eine besondere Berücksichtigung nötig, sonst werden
z.B. Mittelwerte fälschlicherweise niedriger berechnet.
Fehlende Werte werden mit mvdecode VARNAME ,mv(LISTE DER ZAHLEN) erstellt.17
Anmerkungen Dieses Skript sollte eine erste Einarbeitung in Stata ermöglichen. Als Hilfreiche Möglichkeiten zum
Selbstlernen sei auf die Hilfe Funktionen des Programms verwiesen (help, search, net search).
Außerdem empfiehlt sich die Lektüre der einschlägigen und reichhaltigen Literatur zum
Programmpaket.18
Weiterführende Literatur Kohler, Kreuter 2001 Datenanalyse mit Stata. Oldenbourg 2001.
Stata Reference Manuals Bezug über www.stata.com. Empfohlen wird das Basispaket ohne
Programmierhandbuch. Hier lassen sich die Befehle und ihre
mathematischen Grundlagen anhand von Beispielen und einer
ausführlichen Beschreibung nachvollziehen.
Stata net courses Viele interaktive Workshops die Anfängern einen leichteren Einstieg
in das Programm ermöglichen.
URL: www.stata.com
17 Wichtige weitere Informationen mit help mvdecode. 18 Literatur findet sich im Internet auf www.stata.com.
Recommended