PHB Psychologische Methodenlehre

B.Sc. Psychologie Statisik I

→ Statistik II

Einleitung

Statistik I umfasst Grundlagen der Wahrscheinlichkeitstheorie, Datenmanagement, sowie diverse deskriptive Statistiken und wie sie in R angewendet werden können.

Diese Zusammenfassung basiert auf der Vorlesung Statistik I im Wintersemester 2023/24 an der PHB bei Professor Robert Miller, sowie dem Lehrbuch “Statistik und Forschungsmethoden” von Eid, Gollwitzer und Schmitt (5.Auflage).

Wahrscheinlichkeitstheorie

Axiome der Wahrscheinlichkeit

Nicht-Negativät

Eine Wahrscheinlichkeit \(Pr\) eines Ereignisses \(E\) ist nie negativ.

\[Pr(E) \ge 0\]

Normalisierung

Die Summe der Wahrscheinlichkeiten \(Pr\) aller Ereignisse \(E_{i}\) in der Menge \(S\) der möglichen Ereignisse ist 1.

\[E_{i} \in S, Pr(S) = 1\]

\[\sum_{i=1}^{n} Pr(E_{i}) = 1\]

Additivität

Die Wahrscheinlichkeit \(Pr\) von wechselseitig ausschließlichen (\(\cup\)) Ereignissen \(E_{i}\) entspricht ihrer Summe.

\[Pr(E_{1} \cup E_{2} \cup \dots) = Pr(E_{1}) + Pr(E_{2}) + \dots\]

Verkettung von Wahrscheinlichkeiten

Wahrscheinlichkeiten von Eriegnissen, die gemeinsam auftreten (\(\cap\)) werden multiupliziert, um die Gesamtwahrscheinlichkeit zu ermitteln.

\[Pr(E_{1} \cap E_{2} \cap \dots) = Pr(E_{1}) \cdot Pr(E_{2}) \cdot \dots\]

Datenmanagement

Querformat/Langformat

Daten in Querformat: mehre Messungen des gleichen Merkmals in jeweils eigener Spalte

tibble(
  code = c(1,2,3,4,5),
  measurement.1 = rnorm(n = 5, mean = 100, sd = 10),
  measurement.2 = rnorm(n = 5, mean = 100, sd = 10),
  measurement.3 = rnorm(n = 5, mean = 100, sd = 10)
) -> wide
code measurement.1 measurement.2 measurement.3
1 112.62954 84.60050 107.63593
2 96.73767 90.71433 92.00991
3 113.29799 97.05280 88.52343
4 112.72429 99.94233 97.10538
5 104.14641 124.04653 97.00785

Umwandlung in Langformat: Jede Messung in einer eigenen Zeile

wide %>%
  pivot_longer(
    cols = starts_with("measurement."),
    names_prefix = "measurement.",
    names_to = "measurement"
  ) -> long
code measurement value
1 1 112.62954
1 2 84.60050
1 3 107.63593
2 1 96.73767
2 2 90.71433
2 3 92.00991
3 1 113.29799
3 2 97.05280
3 3 88.52343
4 1 112.72429
4 2 99.94233
4 3 97.10538
5 1 104.14641
5 2 124.04653
5 3 97.00785

Winsorisierung

  • Werte außerhalb eines gewählten Intervalls werden abgeschnitten und durch auf die jeweilige nächste Intervallgrenze gesetzt
  • verändert Mittelwert, Varianz und damit auch Standard-Abweichung
  • verändert nicht den Median (sofern dieser nicht mit abgeschnitten wurde)
c(0, 1,2,3,4,5,6,7,8,9) %>% ifelse(. > 6, yes = 6, no = .)
##  [1] 0 1 2 3 4 5 6 6 6 6

Häufigkeitstabelle

  • absolute Häufigkeit
  • kumulierte absolute Häufigkeit
  • relative Häufigkeit
  • kumulierte relative Häufigkeit
  • meistens nach einem Merkmal sortiert

Beispiel: Häufigkeiten von Stürmen nach Jahr

data.short %>%
  group_by(year) %>%
  summarize(absolute = n()) %>%
  ungroup() %>%
  arrange(year) %>%
  mutate(
    absolute.cumulative = cumsum(absolute),
    relative = absolute / sum(absolute),
    relative.cumulative = cumsum(relative)
  ) %>% (knitr::kable)
year absolute absolute.cumulative relative relative.cumulative
2010 402 402 0.1323239 0.1323239
2011 323 725 0.1063199 0.2386438
2012 454 1179 0.1494404 0.3880843
2013 202 1381 0.0664911 0.4545754
2014 139 1520 0.0457538 0.5003292
2015 220 1740 0.0724161 0.5727452
2016 396 2136 0.1303489 0.7030941
2017 306 2442 0.1007242 0.8038183
2018 266 2708 0.0875576 0.8913759
2019 330 3038 0.1086241 1.0000000

Split-Apply-Combine

  1. Split: Daten nach einem Merkmal gruppieren
  2. Apply: Aggregation ausführen (zb Summen, Mittelwerte, Minima/Maxima)
  3. Combine: Gruppierung aufheben
data.short %>%
  group_by(name) %>%
  summarize(wind.top = max(wind)) %>%
  ungroup() %>%
  arrange(-wind.top) %>%
  top_n(10) %>%
  (knitr::kable)
name wind.top
Dorian 160
Maria 150
Matthew 145
Lorenzo 140
Michael 140
Igor 135
Joaquin 135
Gonzalo 125
Julia 120
Katia 120
Nicole 120
Ophelia 120

Stratifizierung

Daten mit kontinuierlichen Merkmalen oder sehr vielen diskreten Ausprägungen werden in Strata (Gruppen) zusammengefasst, zB. um dann aggregierte Werte (Mittelwerte, Min/Max, etc.) in jeder Gruppe zu berechnen.

Beispiel: höchste Windgeschwindigkeit nach Jahrzehnt

data.long %>%
  mutate(
    decade = cut(
      year,
      breaks = seq(1970, 2030, 10),
      labels = paste0(seq(1970, 2020, 10), "s"),
      include.lowest = TRUE,
      right = FALSE
    )
  ) %>%
  group_by(decade) %>% summarize(top.wind = max(wind)) %>%
  (knitr::kable)
decade top.wind
1970s 150
1980s 160
1990s 155
2000s 160
2010s 160
2020s 135

Zentrale Tendenz

Mittelwert/Durchschnitt

  • Summe aller einzelnen Werte, geteilt durch die Anzahl der Werte.
  • mindestens intervallskaliert
  • anfällig für Extremwerte
  • übliches Symbol für Mittelwert einer Population: \(\mu\)
  • übliches Symbol für Mittelwert einer Stichprobe: \(\overline{x}\)

\[\overline{x} = \frac{1}{n}\cdot\sum_{i=1}^{n} n_{i}\]

mean(data.long$pressure)
## [1] 991.9805

Modus

  • Wert mit der größten absoluten Häufigkeit
  • alle Skalenniveaus
data.long %>% group_by(month) %>% summarize(n = n()) %>% arrange(-n) %>% top_n(1)
## Selecting by n
## # A tibble: 1 × 2
##   month     n
##   <dbl> <int>
## 1     9  4894

Median

  • Wert, der wenn alle Werte sortiert sind, in der Mitte steht. Bei gerader Anzahl stehen zwei Werte in der Mitte. Dann wird aus diesen der Mittelwert gebildet.
  • midnestens ordinalskaliert

Ungerade Anzahl:

\[1, 2, 2, 4, \color{red}{5}, 5, 7, 8, 9\]

Gerade Anzahl:

\[1, 2, 2, 3, \color{red}{3}, \color{red}{5}, 5, 7, 8, 9\] \[\frac{3+5}{2} = \color{red}{4}\]

median(data.long$pressure)
## [1] 999

Dispersion

Variationsbreite

  • Intervall aus Minimum und Maximum

\[\color{red}{1}, 2, 2, 4, 5, 5, 7, 8, \color{red}{9}\] \[VB = [1,9]\]

range(c(1,2,2,4,5,5,7,8,9))
## [1] 1 9

Quantile

Quantil: Wertebereich, in dem eine bestimmte Menge der Merkmalsträger liegt, \(Q_{p} \to p \%\)

Terzile: \(Q_{33.3}\), \(Q_{66.6}\), \(Q_{100}\)

Quartile: \(Q_{25}\), \(Q_{50}\), \(Q_{75}\), \(Q_{100}\)

Quintile: \(Q_{20}\), \(Q_{40}\), \(Q_{60}\), \(Q_{80}\), \(Q_{100}\)

Median entspricht \(Q_{50}\), Minimum und Maximum entsprechen \(Q_{0}\) bzw. \(Q_{100}\)

Berechnung

Position des Quantils: \(Q_{p} \to i = n \cdot p\)

Z.B. bei \(n = 200\) für \(Q_{75}\): \(i = 200 * 0.75 = 150\)

Wenn \(i\) ganze Zahl ist, dann ist \(Q_{p} = \frac{x_{i} + x_{i+1}}{2}\) (Mittelwert aus Position \(x_{i}\) und \(x_{i + 1}\))

Wenn \(i\) keine ganze Zahl ist, dann wird \(i\) aufgerundet (\(\lceil i\rceil\)) und \(Q_{p} = x_{\lceil i\rceil}\), der Wert an der jeweils nächst-höheren Stelle.

quantile(data.long$pressure, probs = seq(1/5, 5/5, 1/5)) #quintile
##  20%  40%  60%  80% 100% 
##  979  994 1002 1007 1022

Interquartilsabstand (IQR)

Differenz zwischen erstem und drittem Quartil:

\[IQR = Q_{75} - Q_{25}\]

IQR(data.long$pressure)
## [1] 21

Varianz

  • mittlere quadrierte Abweichung vom Mittelwert
  • durch Quadierung werden die Abweichungen alle positiv, d.h. Richtung der Abweichung spielt für Varianz keine Rolle
  • bezieht sich auf Gesamtpopulation (siehe Stichprobenvarianz)
  • mindestens intervallskaliert

\[\sigma^2 = \frac{1}{n} \cdot \sum_{i=1}^{n} (x_{i} - \overline{x})^2\]

Stichprobenvarianz

  • bezieht sich auf Stichproben aus einer Population
  • enthält eine Korrektur (\(n - 1\)) gegenüber der allgemeinen Varianz

\[s^2 = \frac{1}{n - 1} \cdot \sum_{i=1}^{n} (x_{i} - \overline{x})^2\] Je größer \(n\), umso mehr nähert sich die Stichprobenvarianz der allgemeinen Varianz an:

\[\lim_{n \to \infty} \frac{1}{n-1} = \frac{1}{n}\] R berechnet mit var standardmäßig die Stichproben-Varianz:

var(data.long$pressure)
## [1] 382.1348

Standardabweichung

  • positive Quadratwurzel aus der Varianz
  • mindestens intervallskaliert
  • bezieht sich auf gesamte Population

\[\sigma = \sqrt{\sigma^2}\]

Bei normalverteilten Merkmalen:

  • 68.2% zwischen \(\overline{x}\pm 1\sigma\)
  • 95.5% zwischen \(\overline{x}\pm 2\sigma\)
  • 99.5% zwischen \(\overline{x}\pm 3\sigma\)

Stichproben-Standardabweichung

  • positive Quadratwurzel aus der Stichproben-Varianz
  • gleiche Korrektur wie bei Stichproben-Varianz
  • bezieht sich auf Stichproben

\[s = \sqrt{s^2}\]

R berechnet mit sd standardmäßig die Stichproben-Standardabweichung:

sd(data.long$pressure)
## [1] 19.54827

Variationskoeffizient

  • Stichproben-Standardabweichung relativ zum Mittelwert
  • verhältnisskaliert

\[CV = \frac{s}{\overline{x}}\]

sd(data.long$pressure) / mean(data.long$pressure)
## [1] 0.0197063

Histogramm

  • gibt schnellen visuellen Eindruck der Verteilung empirischer Daten
data.long %>%
  ggplot(aes(x = wind)) +
  geom_histogram(bins = 30, color = "white", fill = colors[2]) +
  theme_custom

Kerndichteschätzer

  • Schätzung der Wahrscheinlihckeitsdichte einer empirischen Verteilung
data.long %>%
  ggplot(aes(x = wind)) +
  geom_density() +
  theme_custom

Standardisierung

Durch Standardisierung werden Werte miteinander vergleichbar, auch wenn sie z.B. in unterschiedlichen Größenordnungen oder Einheiten vorliegen.

Z-Werte / Z-Standardisierung

  • spielen in vielen weiteren Berechnungen eine sehr große Rolle

Alle einzelnen Werte werden auf 0 zentriert und so skaliert, dass sie eine Standardabweichung von 1 haben:

\[z_{i} = \frac{x_{i} - \overline{x}}{s}\]

data.short %>% select(wind) %>%
  mutate(wind.z = (wind - mean(wind))/sd(wind))
## # A tibble: 3,038 × 2
##     wind  wind.z
##    <int>   <dbl>
##  1    30 -0.988 
##  2    30 -0.988 
##  3    40 -0.576 
##  4    40 -0.576 
##  5    55  0.0403
##  6    55  0.0403
##  7    55  0.0403
##  8    45 -0.371 
##  9    35 -0.782 
## 10    40 -0.576 
## # ℹ 3,028 more rows

Prozentränge

  • geben an, wieviel Prozent einer Häufigkeitsverteilung den gleichen oder einen niedrigeren Wert in einem Merkmal haben
  • mindestens intervallskaliert
  • basiert auf Z-Werten
data.short %>% select(wind) %>%
  mutate(
    wind.z = (wind - mean(wind))/sd(wind),
    wind.pr = pnorm(wind.z)
  )
## # A tibble: 3,038 × 3
##     wind  wind.z wind.pr
##    <int>   <dbl>   <dbl>
##  1    30 -0.988    0.162
##  2    30 -0.988    0.162
##  3    40 -0.576    0.282
##  4    40 -0.576    0.282
##  5    55  0.0403   0.516
##  6    55  0.0403   0.516
##  7    55  0.0403   0.516
##  8    45 -0.371    0.355
##  9    35 -0.782    0.217
## 10    40 -0.576    0.282
## # ℹ 3,028 more rows

Rang-basierte Normalisierung

  • reduziert Skalenniveau zu ordinal
  • erzeugt normalverteilte Werte
  • sehr effektiv gegen Extremwerte, ohne sie komplett zu entfernen

Schritt 1: Werte sortieren

## # A tibble: 10 × 1
##        x
##    <dbl>
##  1     1
##  2     1
##  3     2
##  4     3
##  5     3
##  6     3
##  7     4
##  8     4
##  9     4
## 10     5

Schritt 2: Ränge zuordnen

Bei gleichen Werten wird ein Rang mehrfach vergeben

## # A tibble: 10 × 2
##        x     n
##    <dbl> <int>
##  1     1     1
##  2     1     2
##  3     2     3
##  4     3     4
##  5     3     5
##  6     3     6
##  7     4     7
##  8     4     8
##  9     4     9
## 10     5    10

Schritt 3: bei geteilten Rängen Mittelwert bilden

## # A tibble: 10 × 3
##        x     n     r
##    <dbl> <int> <dbl>
##  1     1     1   1.5
##  2     1     2   1.5
##  3     2     3   3  
##  4     3     4   5  
##  5     3     5   5  
##  6     3     6   5  
##  7     4     7   8  
##  8     4     8   8  
##  9     4     9   8  
## 10     5    10  10

Schritt 4: Prozentränge und Z-Werte berechnen

\[y = \frac{r-0.5}{n}\]

## # A tibble: 10 × 5
##        x     n     r     p      z
##    <dbl> <int> <dbl> <dbl>  <dbl>
##  1     1     1   1.5  0.1  -1.28 
##  2     1     2   1.5  0.1  -1.28 
##  3     2     3   3    0.25 -0.674
##  4     3     4   5    0.45 -0.126
##  5     3     5   5    0.45 -0.126
##  6     3     6   5    0.45 -0.126
##  7     4     7   8    0.75  0.674
##  8     4     8   8    0.75  0.674
##  9     4     9   8    0.75  0.674
## 10     5    10  10    0.95  1.64

Nach der Rang-basierten Normalisierung sind \(p\) und \(z\) normalverteilt.

Bedingte Wahrtscheinlichkeit

Bedingte Wahrscheinlichkeit \(Pr(B|A)\) ist die Wahrscheinlichkeit, dass A und B gemeinsam auftreten (\(A \cap B\)) unter der Bedingung, dass A bereits eingetreten ist, z.B. die Wahrscheinlichkeit, dass eine Person tatsächlich schwanger ist (B), wenn ein Schwangerschaftstest positiv ausgefallen ist (A).

\[Pr(A|B) = \frac{Pr(A \cap B)}{Pr(A)}\]

Bayes-Theorem

Das Bayes-Theorem stellt den Zusammenhang zwischen den bedingten Wahrscheinlichkeiten \(Pr(B|A)\) und \(Pr(A|B)\) her:

\[Pr(A|B) = \frac{Pr(B|A) \cdot Pr(A)}{Pr(B)}\]

Kontingenztabellen

Kontingenztabellen sind ein Mittel, um Bedingte Wahrscheinlichkeiten zu untersuchen. Die Tabelle enthält alle möglichen Kombinationen zweier diskreter Variablen und deren Häufigkeiten.

Beispiel Schwangerschaftstest:

  • \(A_+\): Test positiv

  • \(A_-\): Test negativ

  • \(B_+\): Schwangerschaft liegt vor

  • \(B_-\): Schwangerschaft liegt nicht vor

  • \(A_+ \cap B_-\): falsch-positiver Test

  • \(A_- \cap B_-\): falsch-negativer Test

  • \(A_- \cap B_-\): richtig-negativer Test

  • \(A_+ \cap B_+\): richtig-positiver Test

(fiktive Daten)

##     A+  A-
## B+ 208  19
## B-  11 762

Randsummen stellen jeweils die Summe der Häufigkeiten in jeder Zeile und Spalte, also die Einzelwahrscheinlichkeiten \(Pr(A_+), Pr(A_-), Pr(B_+), Pr(B_-)\).

Die Randsummen können in R automatisch ermittelt werden:

addmargins(samples)
##      A+  A-  Sum
## B+  208  19  227
## B-   11 762  773
## Sum 219 781 1000

Ausgedrückt als relative Häufigkeiten:

addmargins(samples) / sum(samples)
##        A+    A-   Sum
## B+  0.208 0.019 0.227
## B-  0.011 0.762 0.773
## Sum 0.219 0.781 1.000

Sensitivität

Sensitivität ist die Wahrscheinlichkeit, dass ein Test eine tatsächlich vorliegende Merkmalsausprägung auch erfasst.

Im Beispiel: dass bei vorliegender Schwangerschaft (\(B_+\)), der Test positiv ausfällt (\(A_+\))

\[Pr(A_+|B_+) = \frac{Pr(A_+ \cap B_+)}{Pr(B_+)}\]

\[Pr(A_+|B_+) = \frac{0.208}{0.227} \approx 0.916 \]

Spezifität

(engl.: specificity)

Spezifität ist die Wahrscheinlichkeit, dass eine nicht vorhandene Ausprägung zu einem negativen Testergebnis führt.

Im Beispiel: dass bei nicht vorhandener Schwangerschaft der Test negativ ausfällt

\[Pr(A_-|B_-) = \frac{Pr(A_- \cap B_-)}{Pr(B_-)}\]

\[Pr(A_-|B_-) = \frac{0.762}{0.773} \approx 0.987 \]

Sensitivität und Spezifität geben NICHT an, ob eine positiv ode negativ ausgefallener Test zuverlässig ist. Dafür sind PPV und NPV relevant.

Positiver Vorhersagewert

(engl.: positive preditive value, PPV)

Der PPV gibt an wie wahrscheinlich eine Merkmalsausprägung bei einem positiven Test vorliegt.

Im Beispiel: wie wahrscheinlich jemand bei einem positiver Schwangerschaftstest tatsächlich schwanger ist.

\[Pr(B_+|A_+) = \frac{Pr(B_+ \cap A_+)}{Pr(A_+)}\]

\[Pr(B_+|A_+) = \frac{0.762}{0.781} \approx 0.976 \]

Negativer Vorhersagewert

(engl.: negative predictive value, NPV)

Der NPV gibt an wie wahrscheinlich bei einem negativen Test die getestete Merkmalsausprägung auch tatsächlich nicht vorliegt.

Im Beispiel: wie wahrscheinlich eine negativer Schwangerschaftstest bedeutet, dass die getestete Person wirklich nicht schwanger ist.

\[Pr(B_-|A_-) = \frac{Pr(B_- \cap A_-)}{Pr(A_-)}\]

\[Pr(A_-|B_-) = \frac{0.762}{0.773} \approx 0.987 \]

Weitere Test-Charakteristiken

  • Falsch-Positiv-Rate: \(1 - Spezifität\), weil \(Pr(B_-|A_+) + Pr(B_+|A_+) = 1\)
  • Falsch-Negativ-Rate: \(1 - Sensitivität\), weil \(Pr(B_+|A_-) + Pr(B_-|A_-) = 1\)

Korrelation

Korrelation beschreibt den Zusammenhang zwischen zwei Merkmalen, also wie stark eine Merkmal sich ändert, wenn ein damit korreliertes geändert wird.

Korrelationskoeffizienten sind normierte Maße für die beobachteten Zusammenhänge zwischen Variablen. Sie treffen jedoch keine Aussage über kausale Zusammenhänge.

Beispiel: Alter von Kindern und Körpergröße

Die meisten Kinder werden mit zunehmendem Alter größer. Alter und Größe sind positiv korreliert.

Es existieren verschiedene Korrelationsmaße für verschiedene Einsatzfälle.

Korrelationsmaß Skalenniveau
Matthew-Phi
Chancenverhältnis
Nominal (dichotom )
Chi-Quadrat
Cramer-V
Nominal (polytom)
Spearman-Rho
Kendall-Tau
mindestens Ordinal
Bravais-Pearson
(Produkt-Moment-Korrelation)
minestens Intervall

Matthew-Korrelationskoeffizient

  • geeignet für nominal-skalierte Merkmale mit je zwei Ausprägungen (dichotom).
  • Wertebereich: \([-1, +1]\)
  • bei \(\phi = 0\) besteht kein Zusammenhang zwischen den Merkmalen
\(A_1\) \(A_2\)
\(B_1\) \(n_{1,1}\) \(n_{1,2}\)
\(B_2\) \(n_{2,1}\) \(n_{2,2}\)

\[\phi = \frac{n_{1,1} \cdot n_{2,2} - n_{1,2} \cdot n_{2,1}}{\sqrt{(n_{1,1} + n_{2,1}) \cdot (n_{1,2} + n_{2,2}) \cdot (n_{1,2} + n_{2,1}) \cdot (n_{2,1} + n_{2,2})}}\]

Chancenverhältnis (Odds Ratio)

  • geeignet für nominal-skalierte Merkmale mit je zwei Ausprägungen (dichotom)
  • Wertebereich: \([0, +\infty]\)
  • bei \(OR = 1\) besteht kein Zusammenhang zwischen den Merkmalen

Eine Chance ist das Verhältnis zweier Häufigkeiten

\[OR = \frac{\frac{n_{1,1}}{n_{1,2}}}{\frac{n_{2,1}}{n_{2,2}}} = \frac{n_{1,1} \cdot {n_{2,2}}}{n_{1,2} \cdot n_{2,1}}\]

Chi-Quadrat-Koeffizient

  • geeignet für nominal-skalierte Merkmale mit mehreren Ausprägungen (polytom)
  • Wertebereich: \([0, +\infty]\)
  • bei \(\chi^2 = 0\) besteht kein Zusammenhang zwischen den Merkmalen
  • \(\chi^2\) gibt keine Auskunft über die Richtung des Zusammenhangs
  • abhängig von der Stichprobengröße

\[\chi^2 = \sum_{i=1}^k\sum_{j = 1}^l\frac{(n_{ij} - e_{ij})^2}{e_{ij}}\] \(e_{ij}\) ist die erwartete Häufigkeit unter der Annahme, dass kein Zusammenhang besteht:

\[e_{ij} = \frac{n_i \cdot n_j}{n}\]

Cramer’s-V-Koeffizient

  • abgeleitet von \(\chi^2\)
  • geeignet für nominal-skalierte Merkmale mit mehreren Ausprägungen (polytom)
  • Wertebereich: \([0,1]\)
  • bei \(V = 0\) besteht kein Zusammenhang zwischen den Merkmalen
  • \(V\) gibt keine Auskunft über die Richtung des Zusammenhangs
  • unabhängig von der Stichprobengröße

\[V = \sqrt{\frac{\chi^2}{n \cdot (s-1)}}\]

\(s\) ist die kleinere Anzahl an Kategorien (Ausprägungen) der Variablen. Wenn z.B. eine Variable 5 Kategorien aufweist, die andere jedoch nur 3, so ist \(s=3\).

Spearman-Rho-Korrelationskoeffizient

  • geeignet für ordinal-skalierte Variablen mit Rangbindung, bzw. rang-transformierte metrische Variablen
  • Wertebereich: [-1, +1]
  • bei \(\rho = 0\) besteht kein Zusammenhang

\[\rho = \frac{1}{n-1}\sum_{i=1}^{n}{\frac{(r_{i,1} - \overline{x}_1)}{s_1} \cdot \frac{(r_{i,2} - \overline{x}_2)}{s_2}}\] - \(r_{i,1}\), \(r_{i,2}\): rang-transformierte Ausprägungen von Merkmal 1 und 2 - \(\overline{x}_1\), \(\overline{x}_2\): arithmetische Mittel der Rangreihe 1 und 2 - \(s_1\), \(s_2\): Stichproben-Standardabweichungen der Rangreihen 1 und 2 - \(n\): Anzahl der Zeilen (Stichprobengröße)

\(\rho\) ist vereinfacht die mittlere Produktsumme der z-transformierten Rangwerte:

\[\rho = \frac{1}{n-1}\sum_{i=1}^{n}{z_1 \cdot z_2}\]

Kendall’s-Tau-Korrelationskoeffizient

  • geeignet für ordinal-skalierte Variablen ohne Rangbindung
  • ohne Modifikation nicht geeignet, wenn geteilte Ränge vorliegen
  • Wertebereich: [-1, +1]
  • bei \(\tau = 0\) besteht kein Zusammenhang

\[\tau = \frac{n_K - n_D}{n_k + n_D}\] - \(n_K\): Anzahl der konkordanten Paarvergleiche - \(n_D\): Anzahl der Diskordanten Paarvergleiche

Konkordanz/Diskordanz:

Eine Tabelle mit beiden ordinalen Merkmalen (A und B) wird nach Merkmal A aufsteigend sortiert:

A B
24 35
32 42
36 24
42 29
54 61
58 53
59 78
74 69
74 73
76 84

Anschließend wird Zeilenweise verglichen, wie viele nachfolgende Werte in Spalte B größer sind als B in der aktuellen Zeile. Z.B in Zeile 1 ist \(B=35\) und 7 der darauf folgenden Werte in Spalte B (42, 61, 53, 78, 69, 73, 84) sind größer, diese sind konkordante Paare. Paare, bei denen der weiter unten stehende Wert kleiner ist, sind diskordant. Beide werden ausgezählt.

A B konkordant diskordant
24 35 7 2
32 42 6 2
36 24 7 0
42 29 6 0
54 61 4 1
58 53 4 0
59 78 1 2
74 69 2 0
74 73 1 0
76 84 0 0

Dann werden die Anzahlen der konkordanten und diskordanten Paare summiert:

## $n_k
## [1] 38
## 
## $n_d
## [1] 7

Kovarianz

  • geeignet für metrische Variablen
  • Wertebereich: \([0, +\infty]\)
  • keine Korrelation
  • empfindlich für Extremwerte

\[COV = \frac{1}{n-1} \cdot \sum_{i=1}^n{(x_{i,1} - \overline{x}_1)\cdot((x_{i,2} - \overline{x}_2)}\]

Analog zur Stichprobenvarianz. Diese ist die Kovarianz eines Merkmals mit sich selbst.

Bravais-Pearson-Korrelationskoeffzient

  • geeignet für metrische Variablen
  • abgeleitet aus der Kovarianz
  • Wertebereich: \([-1, +1]\)

\[r = \frac{COV}{s_1 \cdot s_2} = \frac{1}{n-1} \cdot \sum_{i=1}^n{\frac{(x_{i,1} - \overline{x}_1)}{s_1} \cdot \frac{(x_{i,2} - \overline{x}_2)}{s_2}}\]

Analog zu Spearman-\(\rho\) ist auch \(r\) die mittlere Produktsumme der Z-Werte der beiden Merkmale:

\[r = \frac{1}{n-1}\sum_{i=1}^{n}{z_1 \cdot z_2}\]

Modellbildung

Modelle beschreiben eine idealisierte Verteilung von Merkmalen in einer Population und sind durch ihre Parameter definiert.

Beispiele:

Modell Parameter
Normalverteilung Standardabweichung \(\sigma\)
Mittelwert \(\mu\)
Student-t-Verteilung Freiheitsgrade \(df\)
Binomialverteilung Einzelwahrscheinlichkeit \(p\)
Ziehungszahl \(n\)

Parameterschatzung durch Likelihood-Maximierung

Die Likelihood ist die verkettete Wahrscheinlichkeit des Auftretens aller beobachteten Ausprägungen unter der Annahme bestimmter Modellparameter:

\[Lik = \prod_{i = 1}^n x_n = Pr(x_1) \cdot Pr(x_2) \cdot \ldots \cdot Pr(x_n)\]

Da Wahrscheinlichkeiten immer \(\le 1\) sind, wird die Likelihood oft eine sehr kleine Zahl. Um sie besser handhaben zu können und Präzisionsprobleme bei der Auswertung mit Computern zu vermeiden, wird sie oft logarithmiert (mit dem natürlichen Logarithmus \(log_e(x)\)) als Log-Likelihood (\(LogLik\)). Nach den Logarithmengesetzen (Produktregel) ist \(LogLik\) die Summe der logarithmierten Wahrscheinlichkeiten:

\[LogLik = log(Lik) = \sum_{i=1}^n log(Pr(x_n))\]

Hinweis: die Log-Likelihood ist immer negativ, weil Wahrscheinlichkeiten immer \(\le 1\) sind. Das kann zu Irrtümern bei der Maximierung führen, da kleinere negative Zahlen eine größeren Betrag haben (z.B. \(-8253 \lt -2417\)).

Die maximale Likelihood wird meist numerisch bestimmt. Ein einfaches Verfahren ist, die Likelihood für Werte der Modellparameter in einem bestimmten Bereich zu testen und dann das Maximum durch Sortierung zu finden.

Beispiel:

Anhand des Histogramms, wird der Mittelwert bei ca. 106 vermutet, die Standardabweichung bei 2.

Modellanpassung einer Normalverteilung mittels Optimierung in R:

# Berechnung der LogLikelihood der Samples in einer Funktion
loglik_samples <- function(params) {
  m <- params[1]
  s <- params[2]
  
  sum(log(dnorm(samples, mean = m, sd = s)))
}

optim(
  c(106,2), # initiale vermutete Werte, mit denen die Optimierung beginnt
  loglik_samples, # Funktion, die optimiert werden soll
  control = list(fnscale = -1) # Einstellung für Maximierung statt Minimierung
  )
## $par
## [1] 105.647904   1.844083
## 
## $value
## [1] -203.1024
## 
## $counts
## function gradient 
##       65       NA 
## 
## $convergence
## [1] 0
## 
## $message
## NULL

Power-Transformationen

  • erzeugt Werte die näher an einer Normalverteilung liegen
  • nur für positive Ausprägungen geeignet

Power-Transformationen dienen dazu, Daten in einfachere Verteilungen zu überführen (z.B. Normalverteilung).

Ein-Parameter Power-Transformation nach Box & Cox (1964)

\[ y_i(\lambda) = \begin{cases} \frac{y_i^{\lambda}-1}{\lambda} ,& \lambda \ne 0 \\ ln(y_i) ,& \lambda = 0 \end{cases} \]

Der am besten passende Parameter \(\lambda\) kann mittels Likelihood-Maximierung geschätzt werden.

Zwei-Parameter Power-Transformation nach Box & Cox (1964)

  • erzeugt Werte die näher an einer Normalverteilung liegen
  • nur für positive Ausprägungen geeignet

\[ y_i(\lambda_1, \lambda_2) = \begin{cases} \frac{(y_i + \lambda_2)^{\lambda_1}-1}{\lambda_1} ,& \lambda_1 \ne 0 \\ ln(y_i + \lambda_2) ,& \lambda_1 = 0 \end{cases} \]

Power-Transformation nach Yeo & Johnson (2000)

  • erzeugt Werte die näher an der Normalverteilung liegen
  • auch geeignet für negative Ausprägungen

\[ y_i(\lambda) = \begin{cases} ((y_i + 1) ^\lambda -1) / \lambda ,& \lambda \ne 0, y \ge 0 \\ ln(y_i +1) ,& \lambda = 0, y \ge 0\\ -((-y_i + 1)^{2-\lambda}-1) / (2-\lambda) ,& \lambda \ne 2, y \lt 0 \\ -ln(-y_i +1) ,& \lambda = 2, y \lt 0 \end{cases} \]