14.4 Strukturparameter
Strukturparameter sind statistische Kennzahlen, die die Abweichung einer Häufigkeitsverteilung von der Normalverteilung beschreiben. Unterschieden wird zwischen der Abweichung von der Symmetrie (Schiefe) und der Streckung oder Stauchung in Richtung der y-Achse (Wölbung).
14.4.1 Schiefe
Die Schiefe ist ein Strukturparameter, der eine Häufigkeitsverteilung bezüglich der Symmetrie als Abweichung von der Normalverteilung beschreibt. Abbildung 14.4 zeigt eine rechtsschiefe (linkssteile) und eine linksschiefe (rechtssteile) Häufigkeitsverteilung.
Abbildung 14.4 Linkssteile (rechtsschiefe) und rechtssteile (linksschiefe) Häufigkeitsverteilung
Ob eine Verteilung links- oder rechtsschief ist, ermitteln Sie anhand der Lageparameter Modus, Median und arithmetischer Mittelwert.
Allgemein kann für gutartige Verteilungen folgende Näherungsregel aufstellt werden:
Wenn der Modus links vom Median und der Median links vom Schwerpunkt (arithmetischer Mittelwert) liegt, dann ist die Verteilung linkssteil (= rechtsschief). Wenn alle drei Lageparameter gleich sind, dann ist die Verteilung symmetrisch. Dieser Fall kommt in der Praxis allerdings nur näherungsweise vor. Wenn der Schwerpunkt links vom Median liegt und der Median links vom Modus liegt, dann ist die Verteilung rechtssteil (= linksschief).
Die obige Betrachtung kann noch vereinfacht werden, wenn man nur den arithmetischen Mittelwert und den Median betrachtet. Karl Pearson (1895–1980) stellte eine einfache Näherungsformel für die empirische Schiefe S auf:

Wenn der arithmetische Mittelwert größer als der Median ist, dann ist die Verteilung linksschief (rechtssteil). Wenn der arithmetische Mittelwert kleiner als der Median ist, dann ist die Verteilung rechtsschief (linkssteil). Bei positiven S ist die Verteilung also rechtsschief (linkssteil), und bei negativen S ist sie linksschief (rechtssteil). Wenn der Median und der Mittelwert gleich sind, dann hat die Schiefe den Wert 0, d. h., sie ist symmetrisch. Es gibt aber auch Ausnahmen von dieser Regel.
Schiefe
Bei positiven S ist die Dichtefunktion einer Häufigkeitsverteilung linkssteil (rechtsschief). Bei negativen S ist die Verteilung rechtssteil (linksschief).
Listing 14.9 berechnet die Schiefe mit der Formel von Pearson und durch Vergleiche des Modalwertes, des Medians und des arithmetischen Mittelwertes. Weil nach jedem neuen Programmstart auch neue Zufallszahlen erzeugt werden, gibt das Programm auch jedes Mal andere Resultate für die Schiefe aus.
01 #09_schiefe.py
02 import numpy as np
03 from scipy.stats import mode,skew
04 sw=50
05 n=100
06 s=2
07 a=np.random.normal(sw,s,size=n)
08 a=np.round(a,decimals=1)
09 xa=np.mean(a)
10 xm=np.median(a)
11 xmod=mode(a)
12 s=np.std(a,ddof=1)
13 schiefe1=(xa-xm)/s #Pearson
14 schiefe2=skew(a) #SciPy
15 if xmod[0] < xm < xa:
16 print("Die Verteilung ist linkssteil.")
17 elif xmod[0]==xm==xa:
18 print("Die Verteilung ist symmetrisch.")
19 elif xa < xm < xmod[0]:
20 print("Die Verteilung ist rechtssteil.")
21 else:
22 print("Keine eindeutige Entscheidung!")
23 print("Modalwert :",xmod[0])
24 print("Median :",xm)
25 print("arithmetischer Mittelwert:",xa)
26 print("Schiefe",schiefe1,"Pearson")
27 print("Schiefe",schiefe2,"SciPy")
Listing 14.9 Berechnung der Schiefe
Ausgabe
Die Verteilung ist rechtssteil.
Modalwert : [51.2]
Median : 50.0
arithmetischer Mittelwert: 49.86199999999999
Schiefe -0.07413132590359602 Pearson
Schiefe -0.027041877919994687 SciPy
Analyse
Bei der Ausgabe handelt es sich um Zufallsresultate. Auf Ihrem Rechner erscheinen zwangsläufig auch bei jedem Neustart des Programms immer andere Ergebnisse für die Schiefe.
In Zeile 07 erzeugt die NumPy-Funktion normal() näherungsweise normalverteilte Zufallszahlen. Wegen der Abweichung von der idealen Normalverteilung können auch Verteilungen mit einer geringen Links- oder Rechtsschiefe vorkommen.
In den Zeilen 09 bis 11 werden der arithmetische Mittelwert, der Median und der Modus berechnet. In Zeile 12 berechnet die NumPy-Funktion std() die Standardabweichung.
In Zeile 13 wird die Schiefe mit der Näherungsformel von Pearson berechnet. Und in Zeile 14 berechnet die SciPy-Funktion skew(a) die Schiefe.
In den Zeilen 15 bis 22 erfolgen die Fallabfragen. Nicht bei jeder Simulation gibt es ein eindeutiges Ergebnis. Nicht selten erscheint die Meldung "Keine eindeutige Entscheidung!". Es sind auch Abweichungen zwischen den Berechnungen nach Pearson und SciPy möglich.
14.4.2 Wölbung
Die Wölbung oder Kurtosis ist eine statistische Kennzahl, die beschreibt, wie eine Häufigkeitsverteilung von der Normalverteilung in Richtung der y-Achse abweicht. Sie gibt an, wie spitz oder flach eine Kurve der Dichtefunktion verläuft. Abbildung 14.5 zeigt die Wölbung einer Laplace-Verteilung, einer Normalverteilung und einer Gleichverteilung.
Abbildung 14.5 Wölbung für Laplace-, Normal- und Gleichverteilung
Je spitzer die Form der Dichtefunktion ist, desto größer ist die Wölbung. Wenn ihr Wert nahe bei 3 liegt, liegt näherungsweise eine Normalverteilung vor. Wenn die Wölbung kleiner 3 ist, dann verläuft die Dichtefunktion flacher als eine Normalverteilung.
Die Wölbung wird aus der Summe der einzelnen Messwerte xi, dem arithmetischen Mittelwert und der Standardabweichung wie folgt berechnet:

Um die Ausprägung einer Wölbung besser einschätzen zu können, wird sie mit einer Normalverteilung verglichen. Dazu muss von der Wölbungskennzahl w der Wert 3 subtrahiert werden. Wenn man von w den Wert 3 subtrahiert, wird das Wölbungsmaß auch als Exzess bezeichnet.
Exzess
Wenn der Exzess der Dichtefunktion einer Häufigkeitsverteilung einen größeren Wert als 0 hat, dann hat die Verteilung einen eher spitzen Verlauf (steilgipflig). Wenn sie gleich 0 ist, dann ist die Verteilung normalverteilt. Wenn sie kleiner 0 ist, dann hat die Verteilung einen eher flachen Verlauf (flachgipflig).
Listing 14.10 berechnet die Wölbung einer Laplace-, einer Normal- und einer Gleichverteilung mit der oben angegebenen Definitionsformel und mit der SciPy-Funktion kurtosis(a).
01 #10_woelbung.py
02 import numpy as np
03 from scipy.stats import kurtosis,norm,laplace,uniform
04 a1 = uniform.rvs(size=1000, random_state=3) #Gleichverteilung
05 a2 = laplace.rvs(size=1000, random_state=3) #Laplace-Verteilung
06 a3 = norm.rvs(size=1000, random_state=3) #Normalverteilung
07
08 def woelbung(x):
09 n=len(x)
10 summe=0
11 for i in range(n):
12 summe=summe+x[i]
13 m=summe/n #Mittelwert
14 v=0
15 for i in range(n):
16 v=v+(x[i]-m)**2
17 s=np.sqrt(v/(n-1)) #Standardabweichung
18 w=0
19 for i in range(n):
20 w=w+((x[i]-m)/s)**4
21 return w/n-3
22
23 print("Wölbung")
24 print("Gleichverteilung")
25 print(woelbung(a1))
26 print(kurtosis(a1),"SciPy")
27 print("Laplace-Verteilung")
28 print(woelbung(a2))
29 print(kurtosis(a2),"SciPy")
30 print("Normalverteilung")
31 print(woelbung(a3))
32 print(kurtosis(a3),"SciPy")
Listing 14.10 Wölbung
Ausgabe
Wölbung
Gleichverteilung
-1.173953863052345
-1.1702962853267092 SciPy
Laplace-Verteilung
2.5564258191851446
2.5675553623544882 SciPy
Normalverteilung
-0.07514543740673707
-0.06928694200380558 SciPy
Analyse
In den Zeilen 04 bis 06 generiert die Funktion rvs der SciPy-Klassen uniform, laplace und norm gleichverteilte, laplaceverteilte und normalverteilte Zufallszahlen.
In den Zeilen 08 bis 21 berechnet die selbst erstellte Funktion woelbung(x) für die Zufallszahlen aus dem Array x die Wölbung. Als Erstes wird der arithmetische Mittelwert m (Zeilen 10 bis 13) und danach die Standardabweichung s (Zeilen 14 bis 17) berechnet. Zeile 20 berechnet die Summe aus dem Term (x[i]-m)/s)**4. In Zeile 21 wird dieser Term durch die Anzahl n der Zufallszahlen dividiert. Damit der Exzess zurückgegeben wird, muss vom Wölbungsmaß noch eine 3 subtrahiert werden.