Deskriptive Statistik Statistik mit R Heike Zinsmeister 03.11.2011 Abgrenzung: deskriptive vs. analytische Statistik (1) • Deskriptive Statistik = beschreibende Statistik • Aufgabe – Zustände und Vorgänge beschreiben • Methoden – Tabelle, grafische Darstellungen, Verhältniszahlen, typische Kenngrößen wie Lagemaße (z. B. arithmetischer Mittelwert) und Streuungsmaße (z. B. Varianz und Standardabweichung) • Ursprung – von Herrschern benötigte Daten über die Bevölkerung, z B. die Zahl der wehrfähigen Männer – durch den Spieltrieb angeregte Überlegungen über Wettchancen beim Würfelspiel (Sachs und Hedderich 2009:1-2) 1 Abgrenzung: deskriptive vs. analytische Statistik (2) • Analytische Statistik = beurteilende Statistik • Aufgabe – anhand von geeigneten Daten auf allgemeine Gesetzmäßigkeiten schließen, die über den Beobachtungsraum hinaus gültig sind • Methoden – anhand von Zufallsstichproben auf die Grundgesamtheit schließen; Prüfen von Hypothesen über die Grundgesamtheit; statistische Kenngröße: (Zufalls-)Fehler • Ursprung – in der “politischen Arithmetik”, die sich mit Tauf, Heirats- und Sterberegistern beschäftigte, um Geschlechtsverhältnisse, Fruchtbarkeit, Altersaufbau und Sterblichkeit der Bevölkerung abzuschätzen – basiert auf der Wahrscheinlichkeitsrechnung, die mathematische Methoden zur Erfassung stochastischer Experimente beschreibt. (Sachs und Hedderich 2009:1-2) 2 Maße der zentralen Tendenz Charakterisieren eine Verteilung durch eine einzelne Zahl • Modalwert (mode) – Häufigster Wert einer Verteilung • Median (median) – Zentralwert – Geeignet für ordinale Daten • Arithmetisches Mittel (arithmetic mean) – Summe aller Werte eines Vektors geteilt durch Anzahl der Werte • Geometrisches Mittel (geometric mean) – Bei relativen Änderungen (z.B. Wachstum, Zuwachsraten, Produktionssteigung) 3 Maße der zentralen Tendenz • Modalwert (mode) – Häufigster Wert einer Verteilung – bei allen Datentypen einsetzbar, einschließlich nominalen/kategorialen Daten – In R (nach Gries 2008: 113) > x <-c("kalt", "lau", "kalt", "kalt", "warm", "heiß", "warm", "lau") > which.max(sort(table(x))) kalt 4 Die Zahl gibt nur den Index an, nicht die Häufigkeit! Vgl. table (x) 4 Beispiel • Durchschnittliche Temperaturen Jan Feb Mär Apr Mai Jun Jul Aug Sep Okt Nov Dez S1 -5 -12 5 12 15 18 22 23 20 16 8 1 S2 6 7 8 9 10 12 16 15 11 9 8 7 (Gries 2008: 117f.) 5 Maße der zentralen Tendenz • Median (median) – Zentralwert • die Werte nach ihrer Größe sortieren und den Mittleren wählen • bei einer geradzahligen Menge von Elementen das arithmetische Mittel der beiden Mittelwerte – geeignet für Ordinal-, Intervall- und Verhältnisvariablen – In R: > Stadt1= c(-5,-12,5,12,15,18,22,23,20,16,8,1) > median(Stadt1) [1] 13.5 > Stadt2= c(6,7,8,9,10,12,16,15,11,9,8,7) > median(Stadt2) [1] 9 6 Maße der zentralen Tendenz • Arithmetisches Mittel (arithmetic mean) – Summe aller Werte geteilt durch die Anzahl n aller Werte – angemessen nur für metrische Variablen (Intervall- und Verhältnisvariablen) n ∑x > sum(Stadt1)/length(Stadt1) [1] 10.25 > mean(Stadt1) [1] 10.25 > mean(Stadt2) [1] 9.833333 > round(mean(Stadt2),2) [1] 9.83 µ= i i=1 n Eine alternative Notation für µ ("my") ist: x € 7 € Streuungsmaße: Motivation > mean(Stadt1) [1] 10.25 > mean(Stadt2) [1] 9.833333 > plot(Stadt1, type="b", xlab="Monate", ylab="Temperatur", col="darkgreen") > lines(c(rep(0,12)), col="lightgrey") > lines(Stadt2, type="b", col="darkblue") 8 Dispersion und Streuung • Bei Mittelwertangaben immer auch ein Dispersions- oder Streuungsmaß angeben. • Extremeres Beispiel: > Verteilung_1! [1] 5 5 5 5 5 5 5 5 5 5! > Verteilung_2! [1] 1 1 1 1 4 6 8 9 9 10! mean(Verteilung_1)! [1] 5! mean(Verteilung_2)! [1] 5! median(Verteilung_1)! [1] 5! median(Verteilung_2)! [1] 5 par(mfrow=c(2,1)); plot(Verteilung_1, type="b"); plot(Verteilung_2, 9 type="b") Streuungsmaße • Relativer Informationsgehalt / relative Entropie (relative entropy) – z.B. Häufigkeitsverteilung von kategorialen Daten – H=1, wenn die Werte maximal gleichmäßig über alle Ausprägungen verteilt sind – H=0, wenn alle Werte die selbe Ausprägung annehmen (Zentralwert) n ∑ ( p × ln p ) i H rel = − i i=1 ln n – Bsp.: 300 NPs, davon 164 ohne Artikel, 33 mit indefinitem, 103 mit definitem Artikel (Gries€2008:119) > artikel<-c(164, 33, 103) > prozente<-artikel/sum(artikel) > hrel<--sum(prozente*log(prozente))/log(length(prozente)); hrel [1] 0.8556091 10 Streuungsmaße • Spannweite / Variationsbreite (range) – Verhältnisskalierte Daten – Differenz des höchsten und niedrigsten Wertes – Einfach, aber empfindlich gegenüber „Ausreißern“ > range(Stadt1) [1] -12 23 > diff(range(Stadt1)) # diff bildet paarweise Differenzen [1] 35 > max(Stadt1)-min(Stadt1) # alternative Berechnung [1] 35 > range(Stadt1)[2]-range(Stadt1)[1] # zweite Alternative [1] 35 > range(Stadt2) [1] 6 16 > diff(range(Stadt2)) # diff bildet paarweise Differenzen [1] 10 11 Streuungsmaße • Quantile – – Aufsteigend sortierte Werte Angabe, welcher Wert die niedrigsten x%, y% usw. abgrenzt > quantile(a, probs=c(0.05, 0.1, 0.5, 0.9, 0.95), type=1) 5% 10% 50% 90% 95% 5 10 50 90 95 • Sonderfall: Quartile (= Default des Aufrufs von quantile()) > quantile(Stadt1) 0% 25% 50% 75% 100% -12.0 4.0 13.5 18.5 23.0 > IQR(Stadt1) # die Funktion fuer den Interquartilsabstand [1] 14.5 > quantile(Stadt2) 0% 25% 50% 75% 100% 6.00 7.75 9.00 11.25 16.00 Spannbreite zwischen dem Wert der 25%Quartile und der 75%-Quartile, d.h. die > IQR(Stadt2) Spannbreite in denen sich die Werte der [1] 3.5 mittleren 50% der Datenpunkte befinden. 12 Durchschnittliche Abweichung • average deviation • Für jeden Datenpunkt wird die Abweichung zum Mittelwert µ angegeben • Die absoluten Abweichungen werden summiert und gemittelt (d.h. durch die Anzahl n der Datenpunkte geteilt). n ∑( xi − µ ) AD = i=1 n € 13 Durchschnittliche Abweichung • Beispiel > Stadt1 [1] -5 -12 5 12 15 18 22 23 20 16 8 1 > Stadt1-mean(Stadt1) [1] -15.25 -22.25 -5.25 1.75 4.75 7.75 11.75 12.75 9.75 [10] 5.75 -2.25 -9.25 > abs(Stadt1-mean(Stadt1)) # Absolutbeträge [1] 15.25 22.25 5.25 1.75 4.75 7.75 11.75 12.75 9.75 5.75 2.25 [12] 9.25 > mean(abs(Stadt1-mean(Stadt1))) [1] 9.041667 > mean(abs(Stadt2-mean(Stadt2))) [1] 2.472222 14 Streuungsmaße • Varianz – Summe der quadratischen Abweichungen vom Mittelwert µ > var(Stadt1) [1] 123.6591 > var(Stadt2) [1] 9.969697 n 2 (x − µ ) ∑ i var = i=1 n € 15 Standardabweichung • Wurzel der Varianz • ist das meist verbreitete Streuungsmaß • Nachteil – Ist abhängig von der Höhe des Mittelwerts – Schlechter Vergleich von Verteilungen mit unterschiedlichen Mittelwerten > sd(Stadt1) [1] 11.12021 > sd(Stadt2) [1] 3.157483 n 2 (x − µ ) ∑ i sd = € i=1 n 16 Neu: Stichprobe Standardfehler • Abweichung eines Mittelwerts von gleich großen Stichproben aus einer Population / Gesamtheit – je größer der Stanardfehler, desto schlechter schätzt ein beobachteter Mittelwert einer Stichprobe den Mittelwert der Gesamtheit Mittelwerte: SE Mittelwert = var sd = n n p − (1 − p) Prozentwert: € SE Pr ozentwert = n Sinnvoll bei: n≥30, normalverteilt 17 € Variationskoeffizient • Normalisiert die Standardabweichung in Bezug auf die Größe des Mittelwerts • Division der Standardabweichung durch den Mittelwert > sd(Stadt1) [1] 11.12021 > sd(Stadt1*10) [1] 111.2021 # Vergleich nicht möglich > sd(Stadt1)/mean(Stadt1) [1] 1.084899 > sd(Stadt1*10)/mean(Stadt1*10) # nun erhalten wir den gleichen Wert [1] 1.084899 > sd(Stadt2)/mean(Stadt2) [1] 0.3210999 18 Zusammenfassende Funktion > summary(Stadt1) Min. 1st Qu. Median -12.00 4.00 13.50 > summary(Stadt2) Min. 1st Qu. Median 6.000 7.750 9.000 Mean 3rd Qu. 10.25 18.50 Max. 23.00 Mean 3rd Qu. 9.833 11.250 Max. 16.000 19 Zusammenfassende Darstellung • Boxplot (siehe Gries 2008: 125) > boxplot(Stadt1, Stadt2, notch=T) > text(1:2, c(mean(Stadt1), mean(Stadt2)), c("+", "+")) > summary(Stadt1) Min. 1st Qu. Median -12.0011.11.2010 4.00 13.50 Mean 3rd Qu. 10.25 18.50 Max. 23.00 > summary(Stadt2) Min. 1st Qu. Median 6.000 7.750 9.000 Mean 3rd Qu. 9.833 11.250 Max. 16.000 20 Zusammenfassende Darstellung Boxplot • • • • • horizontale fette Linie = Median horizontale Linie, die obere und untere Grenze der Box darstellen = obere und untere Hinges (ca. der 75%- und 25%-Quartil) die gestrichelte vertikale Linien mit den horizontalen Begrenzungen (Whiskers) markieren den höchsten und niedrigsten Werte, die nicht mehr als 1.5 Interquartilsabstände von der Box entfernt sind Ausreißer außerhalb der Whiskers werden mit einzelnem Punkt dargestellt die durch notch=true erzeugten Einschnürungen erstrecken sich über den Bereich ±1.58*IQR/sqrt(n): wenn sich die Einschnürungen nicht überlappen (sondern eine die andere einschließt), unterscheiden sich die Mediane wahrscheinlich nicht signifikant. 21 Standardisierung (z-Werte) • Notwendig beim Vergleich von unterschiedlichen Skalen • Bsp.: Noten aus unterschiedlichen Klassenarbeiten – „Güte“ zweier Noten, die zu zwei Verteilungen mit unterschiedlichen Durchschnitten (mean) gehören. • Transformation der Abstände zum jeweiligen Mittelwert in die Anzahl der jeweiligen Standardabweichungen, die der Wert abweicht. • Z-transformierte Werte besitzen einen Mittelwert von 0 und eine Standardabweichung von 1 Beachte: Von ordinalskalierten Daten wie Schulnoten darf mathematisch gesehen eigentlich nur der Median gebildet werden. Im Alltag wird auch hier oft der Mittelwert verwendet. 22 Standardisierung (z-Werte) > a<-1:5 # Beispielverteilung > z.werte<-(a-mean(a))/sd(a); z.werte #"zu Fuß" [1] -1.2649111 -0.6324555 0.0000000 0.6324555 1.2649111 > mean(z.werte) # standardisierter Mittelwert [1] 0 > sd(z.werte)# standardisierte Standardabweichung [1] 1 > scale(a) # Standardisierungsfunktion in R [,1] [1,] -1.2649111 [2,] -0.6324555 [3,] 0.0000000 [4,] 0.6324555 [5,] 1.2649111 attr(,"scaled:center") # Mittelwert der Eingabedaten [1] 3 attr(,"scaled:scale") # Standardabweichung der Eingabedaten [1] 1.581139 23 Standardisierung (z-Werte) Beispiel nach Gries (2008:127) • Frage: Wenn Schüler X in Kurs A eine 2 erhalten hat und Schüler Y in Kurs B eine 3, ist Schüler X dann wirklich besser als Schüler Y? > Noten.vom.Kurs.A<-rep(1:6, 6:1); Noten.vom.Kurs.A > Noten.vom.Kurs.B<-rep(1:6, 1:6); Noten.vom.Kurs.B > scale(Noten.vom.Kurs.A) > scale(Noten.vom.Kurs.B) Note 2 in Kurs A: Note 3 in Kurs B: z-Wert = [7,] -0.4364358 z-Wert = [2,] -1.5275252 24 Konfidenzintervalle • Bisher: – Häufigkeiten einer Variablenausprägung / Mittelwerte etc. einer Variable in einer Stichprobe • Neu: – Wie gut charakterisiert der Kennwert der Stichprobe die Gesamtheit? • Wie lang sind (wahrscheinlich) die Vorfelder aller Texte des L2-Lernenden / aller L2-Lernenden (in Buchstaben)? • Wie häufig steht (wahrscheinlich) eine Nominalphrase im Vorfeld aller Sätze des L2-Lernenden / aller L2Lernenden? • Standard: 95%ige Konfidenz 25 Konfidenzintervall: Mittelwert Sinnvoll bei: mean(Buchstaben,na.rm=T)! [1] 7.857143! n≥30, normalverteilt Welche wahren Populationsmittelwerte könnten den Stichprobenmittelwert von ca. 7.86 mit einer 95%igen Wahrscheinlichkeit erzeugt haben?! t.test(Buchstaben, conf.level=0.95)$conf.int! [1] 5.240574 10.473712! Mittelwert: 7,86 attr(,"conf.level")! (95%-K.I.: [1] 0.95! 5,24 –10,47) Relevanz: Vergleich von zwei Mittelwerten . Überlappen die Konfidenzintervalle nicht → Signifikanter Unterschied der Mittelwerte Die Umkehrung gilt nicht zwingend! Vgl. Crawley 2005: 169f. nach Gries 2008: 130. 26 Konfidenzintervall: Häufigkeit • Häufigkeiten von Kategorien im Vorfeld > table(Kategorie)! Kategorie! AdvP NP PP Satz ! 9 16 2 1 ! • 95%-Konfidenzintervall für den Prozentanteil von 55,17% für NP (16/29 = 0.5517241)! > prop.test(16,29, conf.level=0.95)$conf.int! [1] 0.3598046 0.7304604! attr(,"conf.level")! [1] 0.95! • In 55,17% der Vorfelder steht eine NP (95%-K.I.: 35,98% - 73,05%) 27 Visualisierung von Häufigkeiten • Punkt-/Streu- und Liniendiagramme – Abbildung individueller Datenpunkte eines Vektors – Bsp. Vektor (1, 3, 5, 2, 4) plot(c(1,3,5,2,4))! plot(c(1,3,5,2,4), type="l")! plot(c(1,3,5,2,4), type=”b")! 28 Visualisierung von Häufigkeiten • Kreis- und Säulendiagramme – Nominal-/Kategorialvariablen – Bsp. Häufigkeiten von Pausenelementen pie(table(FILLER))! barplot(table(FILLER), col=c("grey20", "grey40", 29 "grey60"), names.arg=c("Aeh", "Aehm", "Stille")) Visualisierung von Häufigkeiten • Histogramme – Klassenbildung über Verhältnisdaten – Bsp. Häufigkeiten der Längen von Planungspausen abgebildet auf Längenklassen hist(LAENGE, main="", xlab="Laenge in ms", ylab="Haeufigkeit", xlim=c(0, 2000), ylim=c(0, 100), col="grey80") 11.11.2010 30 Referenzen • Stefan Th. Gries. 2008. Statistik für Sprachwissenschaftler. Vandenhoeck & Ruprecht. – Kapitel 1 und 3. • Andere: – K. Backhaus, W. Plinke und B. Erichson. 2006. Multivariate Analysemethoden – Eine anwendungsorientierte Einführung, Berlin: Springer. – Ellen F. Prince. 1981. Toward a taxonomy of given-new information. In Peter Cole (Hrsg.) Radical Pragmatics. New York: Academic Press. 223–255. – Ellen F. Prince. 1999. How not to mark topics: ‘Topicalization’ in English and Yiddish. 8 Texas Linguistics Forum. – Lothar Sachs und Jürgen Hedderich. 2009. Angewandte Statistik, Berlin: Springer. 1-2 – Michael Strube und Udo Hahn. 1999. Functional Centering Grounding Referential Coherence in Information Structure. Computational Linguistics, Volume 25, Number 3, September 1999. 309 - 344. 31