7  Lagemaße

Lagemaße oder Lokalisationsmaße geben durch eine einzige Zahl an, “wo die Daten liegen”. Es handelt sich also um eine starke Informationsverdichtung. Wir behandeln drei Lagemaße, nämlich den Mittelwert, den Median und den Modus.

7.1 Mittelwert

Der Mittelwert wird auch Mittel, Durchschnitt oder arithmetisches Mittel genannt, im Englischen heißt er mean oder average. Als Notation hat sich ein Querstrich über der Variable eingebürgert, also z.B. \(\bar x\) (sprich: x-quer, engl. ex-bar) für den Mittelwert der Variable \(X\).

Der Mittelwert ergibt sich, indem man die Summe aller Werte durch die Anzahl der Beobachtungen dividiert, \[ \bar x= \frac{1}{n}\sum_{i=1}^n x_i \] Der Mittelwert kann nur für metrische Variablen berechnet werden. Bei ordinalen Variablen haben die Abstände zwischen zwei Werten keine sinnvolle inhaltliche Bedeutung, sie geben nur an, welcher Wert höher oder niedriger ist. Die Summe aller Werte, die man für die Berechnung des Mittelwerts braucht, hat also keine sinnvolle inhaltliche Bedeutung. Nominal skalierte Variablen können ebenfalls nicht sinnvoll addiert werden.

Beispiel:

Wir laden den Datensatz mocksoep. Er enthält einen (aus Datenschutzgründen) verrauschten kleinen Auszug aus dem Sozio-ökonomischen Panel SOEP. Das SOEP ist ein Längsschnittdatensatz, der in der ökonomischen Forschung in Deutschland oft verwendet wird. Er enthält Angaben über sehr viele Personen und Haushalte.

Die gleichen Personen und Haushalte werden jedes Jahr erneut interviewt, so dass man Informationen über die Veränderungen in einem Zeitraum von bis zu fast 40 Jahren gewinnt. Der mocksoep-Datensatz enthält nur Angaben von 2000 bis 2020. Eine Beschreibung der Variablen finden Sie im Anhang Anhang D.

soep <- read_csv("../data/mocksoep.csv", 
                 col_types = "nnnnfnnnffnnncnnnnn") 
names(soep)
 [1] "id"        "hid"       "year"      "age"       "sex"       "npers"    
 [7] "educ"      "hours"     "empllev"   "region"    "pregov"    "postgov"  
[13] "earn"      "sport"     "height"    "weight"    "healthsat" "ndoctor"  
[19] "lifesat"  

Wir filtern aus dem Datensatz alle Beobachtungen von Männern aus dem Jahr 2020 heraus und ziehen dann mit dem pull-Befehl die Variable earn (Lohneinkommen) als Vektor heraus. Dieser Vektor wird unter dem Namen lohnM gespeichert. Das gleiche tun wir für Frauen und speichern deren Lohnvektor unter dem Namen lohnF.

lohnM <- soep %>% 
         filter(year == 2020, sex == "M") %>% 
         pull(earn)
lohnF <- soep %>% 
         filter(year == 2020, sex == "F") %>% 
         pull(earn)

Wir berechnen das mittlere Lohneinkommen von Männern und Frauen im Jahr 2020: Für die Männer betrug es

mean(lohnM)
[1] 39489.32

und für die Frauen war es

mean(lohnF)
[1] 19365.24

Der durchschnittliche Lohn der Frauen im Jahr 2020 war also 51 Prozent niedriger als bei den Männern.

In diesem Beispiel haben wir das Durchschnittslohneinkommen für die beiden Gruppen “Männer” und “Frauen” berechnet. Die Gruppen wurden nach der Variable sex getrennt. Die tidyverse-Befehle erlauben eine sehr effiziente Art, für alle Gruppen auf einmal den Mittelwert (oder auch andere Kennzahlen) zu berechnen. Dazu nutzen wir die beiden Funktionen group_by und summarise, die wir bereits im Kapitel 4 kennen gelernt haben.

soep %>% 
    filter(year == 2020) %>%
    group_by(sex) %>%
    summarise(mittelwert = mean(earn))
# A tibble: 2 × 2
  sex   mittelwert
  <fct>      <dbl>
1 F         19365.
2 M         39489.

Dieser Befehl liefert als Ausgabe einen neuen Dataframe, der in der linken Spalte die Ausprägungen der Gruppierungsvariable (sex) und in der rechten Spalte die zugehörigen Mittelwerte zeigt.

7.2 Lineare Transformationen

Angenommen, alle Beobachtungen \(x_1,\ldots,x_n\) werden einer linearen Transformation unterzogen, \[ y_i = ax_i+b, \] für \(i=1,\ldots,n\), wobei \(a\) und \(b\) zwei reelle Zahlen sind. Wie verhält sich in diesem Fall der Mittelwert von \(Y\) zum Mittelwert von \(X\)? Die Antwort auf diese Frage lässt sich wie folgt herleiten: \[\begin{align*} \bar y &= \frac{1}{n}\sum_{i=1}^n y_i \\ &= \frac{1}{n}\sum_{i=1}^n (ax_i+b) \\ &= \frac{1}{n}\sum_{i=1}^n ax_i + \frac{1}{n}\sum_{i=1}^n b \\ &= a\frac{1}{n}\sum_{i=1}^n x_i + b \\ &= a\bar x + b \end{align*}\] d.h. bei einer linearen Transformation der Daten ändert sich der Mittelwert gemäß der gleichen linearen Transformation. Man sagt daher, dass der Mittelwert ein linearer Operator ist.

Beachten Sie, dass für nicht-lineare Transformationen der Zusammenhang der Mittelwerte nicht so einfach ist. Wenn beispielsweise alle Werte \(x_i\) quadriert werden, d.h. \(y_i=x_i^2\), dann gilt im Allgemeinen nicht \(\bar y=\bar x^2\). Das lässt sich durch ein einfaches Gegenbeispiel leicht nachweisen. Wenn die Population nur aus zwei Merkmalsträgern besteht mit den Werten \(x_1=1\) und \(x_2=9\), dann ist \(\bar x=5\), aber wegen \(y_1=x_1^2=1\) und \(y_2=x_2^2=81\) gilt \(\bar y=41\). Das Quadrat von \(\bar x\) ist hingegen \(\bar x^2=25\).

7.3 Median

Der Median (engl. median) ist der Wert “in der Mitte”. Gelegentlich wird der Median auch Zentralwert genannt. Grob gesagt, teilt der Median die Beobachtungen \(x_1,...,x_n\) in zwei gleich große Gruppen: Die Werte, die kleiner als der Median sind, und die Werte, die größer als der Median sind.

In der tatsächlichen Anwendung ist eine solche exakte Aufteilung nicht immer möglich, oder es gibt mehrere Wert, die zu der Aufteilung führen. Eine gängige und eindeutige technische Definition des Medians lautet:

Seien \(x_1,...x_n\) die Beobachtungen. Der Median \(\tilde x_{0.5}\) ist der kleinste Wert, für den gilt: Der Anteil der Beobachtungen, die kleiner oder gleich dem Median sind, beträgt 0.5 oder mehr.

Wir kommen später in Kapitel @ref(quantile) noch genauer auf diese Definition zurück.

Der Median kann nicht für nominal skalierte Variablen berechnet werden, weil nominal skalierte Werte nicht der Größe nach geordnet werden können. Für ordinal oder metrisch skalierte Werte kann der Median hingegen problemlos als Lagemaß verwendet werden.

Beispiel:

Die beiden Datenvektoren lohnM und lohnF haben wir bereits im vorherigen Abschnitt erstellt. Der Median des Lohneinkommens der Männer beträgt

median(lohnM)
[1] 25356.5

und für die Frauen erhält man

median(lohnF)
[1] 11187

Der Medianlohn der Frauen war also im Jahr 2020 um 55.9 Prozent niedriger als der Medianlohn der Männer.

Auch hier ist eine Berechnung mit der Funktion summarise möglich:

soep %>% 
    filter(year == 2020) %>%
    group_by(sex) %>%
    summarise(Med = median(earn))
# A tibble: 2 × 2
  sex      Med
  <fct>  <dbl>
1 F     11187 
2 M     25356.

7.4 Modus

Der Modus (engl. mode or modal value) ist der Wert, der am häufigsten vorkommt, \[ x_{mod} = \xi_{j^*} \] mit \(j^*=\arg\max_j n_j\) (d.h. \(j^*\) ist der Wert von \(j\), bei dem \(n_j\) maximal ist). Wenn mehrere \(n_j\) den höchsten Wert annehmen, werden alle zugehörigen \(\xi_j\) als Modi gezeichnet. In diesem Fall ist der Modus als Lagemaß aber oftmals nicht besonders hilfreich.

Der Modus kann im Gegensatz zum Median und Mittelwert auch für nominal skalierte Variablen bestimmt werden.

Beispiel:

Die nominal skaliert Variable region gibt an, in welchem Bundesland das Individuum lebt. Für den Modus gibt es keine Funktion in R. Man könnte sich zwar selber eine Funktion dafür schreiben, aber den Modus aus einer Tabelle abzulesen, ist so einfach, dass eine Extra-Funktion nicht nötig ist.

table(soep$region)

   BE    HE    RP    NW    BW    BB    SH    BY    HB    MV    HH    NI    SN 
17534 32502 22238 96442 55580 19368 15427 71362  3494 10757  7485 43466 32009 
   ST    TH    SL 
18127 19009  4918 

Man erkennt sofort, dass das Bundesland NW (also Nordrhein-Westfalen) am häufigsten vorkommt und deswegen der Modus der Variable region ist. Es gibt auch einen Befehl, mit dem der höchste Wert gesucht und ausgegeben werden kann:

which.max(table(soep$region))
NW 
 4 

7.5 Die Option na.rm

Wie bereits in Kapitel 2.4 erwähnt, kommen fehlende Werte sehr oft vor. Sie werden in R durch NA (not available) gekennzeichnet. Selbst wenn nur eine Beobachtung einer Variable fehlt, lassen sich die Lagemaße im Allgemeinen nicht mehr berechnen. Zum Beispiel muss für den Mittelwert die Summe aller Variablenwerte bekannt sein. Schon wenn nur ein einziger Wert fehlt, ist die Summe nicht mehr bekannt und der Mittelwert kann nicht berechnet werden.

Eine einfache und pragmatische Vorgehensweise auch bei fehlenden Werten Lagemaße zu bestimmen, besteht darin, die fehlenden Werte zu entfernen und das Lagemaß nur für die tatsächlich beobachteten Werte zu berechnen. Bei einem Populationsumfang von \(n\) und \(k\) fehlenden Werten wird die Summe aller vorhandenen Variablenwerte also durch \(n-k\) dividiert, um den Mittelwert zu bestimmen.

Fast alle R-Funktionen zur Berechnung von Kennzahlen bieten die Option na.rm (not availables remove). Wird diese Option auf TRUE gesetzt, dann entfernt R vor der Berechnung der Kennzahl die fehlenden Werte. Wenn man die Option na.rm=TRUE nicht setzt, gilt der Standardwert FALSE und als Ergebnis erhält man NA (sofern es fehlende Werte gibt).

Beispiel:

Aus dem Dataframe soep ziehen wir die Variable ndoctor heraus und speichern sie in dem Vektor arzt. Die Variable gibt an, wie viele Arztbesuche die befragte Person im letzten Quartal gemacht hat.

arzt <- soep$ndoctor

Nicht alle Personen haben die Zahl ihrer Arztbesuche angegeben. Die Anzahl der fehlenden Werte beträgt

sum(is.na(arzt))
[1] 7057

Wenn die Funktion mean ohne die Option zum Entfernen der fehlenden Werte ausgeführt wird, ergibt sich als Ergebnis:

mean(arzt)
[1] NA

Setzt man die Option na.rm=TRUE erhält man die durchschnittliche Zahl der Arztbesuche im letzten Quartal von allen Personen, die diese Frage beantwortet haben.

mean(arzt, na.rm=TRUE)
[1] 9.468505

Auch für die meisten anderen Kennzahlen kann diese Option gesetzt werden, beispielsweise für den Median:

median(arzt, na.rm=TRUE)
[1] 4

7.6 Optimierung

Welches Lagemaß kann die Lage der Daten optimal anzeigen? Diese Frage kann man nur beantworten, wenn man ein Optimalitätskriterium definiert. Da im Allgemeinen natürlich nicht alle Werte \(x_1,\ldots,x_n\) exakt dem Lagemaß entsprechen, gibt es Fehler \[ u_i=x_i - m, \] wobei \(m\) für das Lagemaß steht. Ein Lagemaß ist dann optimal, wenn die Fehler möglichst klein sind. Damit stellt sich die Frage, was man mit möglichst klein meint. Hier gibt es zwei naheliegende Antworten:

  1. Man wählt das Lagemaß \(m\) so aus, dass die Summe der quadrierten Fehler \[ \sum_{i=1}^n u_i^2 \longrightarrow \min_m \] minimiert wird. Bei diesem Optimierungsproblem ist der Mittelwert \(\bar x\) das optimale Lagemaß, denn wenn wir die Ableitung der Zielfunktion nach \(m\) auf Null setzen, ergibt sich \[\begin{align*} &2\sum_{i=1}^n (x_i-m)=0\\ \Leftrightarrow\quad & \sum_{i=1}^n (x_i-m)=0\\ \Leftrightarrow\quad & \sum_{i=1}^n x_i=\sum_{i=1}^n m\\ \Leftrightarrow\quad & \sum_{i=1}^n x_i=nm\\ \Leftrightarrow\quad & m=\frac{1}{n}\sum_{i=1}^n x_i\\ \end{align*}\] Diese Herleitung zeigt, dass das arithmetische Mittel (der Durchschnitt) die Summe der quadrierten Abweichungen minimiert.

  2. Man wählt das Lagemaß \(m\) so aus, dass die Summe der Absolutbeträge der Fehler \[ \sum_{i=1}^n |u_i| \longrightarrow \min_m \] minimiert wird. Wenn man dieses Optimierungsproblem löst, ergibt sich als optimales Lagemaß \(m\) der Median. Für die Herleitung splitten wir die Summe der Beträge in zwei Summen auf, nämlich \[ \sum_{i=1}^n |x_i-m| = \sum_{i:x_i\le m}(m-x_i) + \sum_{i:x_i>m}(x_i-m) \] Die erste Summe auf der rechten Seite der Gleichung umfasst alle \(x_i\) die kleiner (oder gleich) als \(m\) sind, die Beträge sind darum in dieser Summe \(m-x_i\). Die zweite Summe umfasst alle \(x_i>m\). Zum Optimieren leiten wir die rechte Seite nach \(m\) ab und setzen die Ableitung auf 0, \[\begin{align*} &\sum_{i:x_i\le m} 1 + \sum_{i:x_i>m}(-1) =0\\ \Leftrightarrow\quad & \text{Anzahl } (x_i\le m) - \text{Anzahl }(x_i>m)=0\\ \Leftrightarrow\quad & \text{Anzahl } (x_i\le m) = \text{Anzahl }(x_i>m) \end{align*}\] Im Optimum müssen also genauso viele Werte unter (oder auf) \(m\) liegen wie über \(m\). Mit anderen Worten, \(m\) muss die Daten in zwei Hälften unterteilen, und genau das macht der Median. (Wir ignorieren hier zur Vereinfachung den Fall, dass eine exakte Aufteilung in zwei gleich große Gruppen nicht möglich ist.)

Der Mittelwert und der Median sind also nicht nur intuitiv als Lagemaße plausibel, sondern sie haben auch eine rationale Grundlage als Lösung eines Optimierungsproblems.