---
fontsize: 8pt
format:
  beamer:
    include-in-header: ../ALM_Header.tex
bibliography: ../ALM_Referenzen.bib
---


```{r, include = F}
source("../ALM_Common.R")
```


# {.plain}
<!-- Vorlesungstitel -->
\center
```{r, echo = F, out.width = "20%"}
knitr::include_graphics("../OvGU_Logo.png")
```

\vspace{2mm}
\huge
Allgemeines Lineares Modell

\vspace{6mm}
\large
BSc Psychologie, SoSe 2024

\vspace{5mm}
Joram Soch


<!-- Sitzung 2: Korrelation -->
# {.plain}

\vfill
\center
\huge
\textcolor{black}{(2) Korrelation}
\vfill


<!-- Inhaltsverzeichnis -->
#

\setstretch{3}
\vfill
\large

Grundbegriffe der Korrelation

Korrelation und Bestimmtheitsmaß

Anwendung/Praxis

Selbstkontrollfragen

\vfill


<!-- Abschnitt 1: Grundbegriffe der Korrelation -->
#

\setstretch{3}
\vfill
\large

**Grundbegriffe der Korrelation**

Korrelation und Bestimmtheitsmaß

Anwendung/Praxis

Selbstkontrollfragen

\vfill


<!-- Anwendungsszenario -->
# Grundbegriffe der Korrelation

\large
Anwendungsszenario

```{r, echo = F, out.width = "80%"}
knitr::include_graphics("Abbildungen/beispielszenario.pdf")
```


<!-- Beispieldatensatz -->
# Grundbegriffe der Korrelation

Beispieldatensatz

\center
\footnotesize
$i = 1,...,20$ Patient:innen, $y_i$ Symptomreduktion bei Patient:in $i$, $x_i$ Anzahl Therapiestunden von Patient:in $i$

\setstretch{1}
```{r, echo = F}
fname = "Daten/Korrelation_Simulation.csv"
D     = read.table(fname, sep = ",", header = TRUE)
knitr::kable(D, "pipe")
```


<!-- Beispieldatensatz -->
# Grundbegriffe der Korrelation

Beispieldatensatz

```{r, echo = F, eval = F}
fname = "Daten/Korrelation_Simulation.csv"
D     = read.table(fname, sep = ",", header = TRUE)
graphics.off()
dev.new()
par(
    family      = "sans",
    mfcol       = c(1,1),
    pty         = "s",
    bty         = "l",
    lwd         = 1,
    las         = 1,
    mgp         = c(2,1,0),
    xaxs        = "i",
    yaxs        = "i",
    font.main   = 1,
    cex         = 1,
    cex.main    = 1)
plot(D$x_i, D$y_i,
    pch         = 16,
    xlab        = "Anzahl Therapiestunden (x)",
    ylab        = "Symptomreduktion (y)",
    xlim        = c(0,21),
    ylim        = c(-10, 40))
legend("topleft", TeX("$(x_i,y_i)$"),
    lty         = 0,
    pch         = 16,
    col         = "black",
    bty         = "n",
    cex         = 1,
    x.intersp   = 1)
dev.copy2pdf(
    file        = "Abbildungen/beispieldatensatz.pdf",
    width       = 4,
    height      = 4)
```

```{r, echo = F, out.width = "60%"}
knitr::include_graphics("Abbildungen/beispieldatensatz.pdf")
```

\vspace{-4mm}
\center
\textcolor{darkblue}{Wie stark hängen Anzahl Therapiestunden und Symptomreduktion zusammen?}


<!-- Definition: Korrelation -->
# Grundbegriffe der Korrelation

\small
\begin{definition}[Korrelation]

\justifying
Die \textit{Korrelation} zweier Zufallsvariablen $\xi$ und $\upsilon$ ist definiert als
\begin{equation}
\rho(\xi,\upsilon) := \frac{\mathbb{C}(\xi,\upsilon)}{\mathbb{S}(\xi)\mathbb{S}(\upsilon)}
\end{equation}
wobei $\mathbb{C}(\xi,\upsilon)$ die Kovarianz von $\xi$ und $\upsilon$ und $\mathbb{S}(\xi)$ und $\mathbb{S}(\upsilon)$ die Standardabweichungen von $\xi$ bzw. $\upsilon$ bezeichnen.

\end{definition}

\footnotesize
Bemerkungen

* $\rho(\xi,\upsilon)$ wird auch \textit{Korrelationskoeffizient} von $\xi$ und $\upsilon$ genannt.
* Wir haben bereits gesehen, dass $-1 \le \rho(\xi,\upsilon) \le 1$ gilt.
* Wenn $\rho(\xi,\upsilon) = 0$ ist, werden $\xi$ und $\upsilon$ \textit{unkorreliert} genannt.
* Wir haben bereits gesehen, dass aus der Unabhängigkeit von $\xi$ und $\upsilon$, folgt dass $\rho(\xi,\upsilon) = 0$.
* Wenn $\rho(\xi,\upsilon) = 0$ ist, sind aber $\xi$ und $\upsilon$ nicht notwendigerweise unabhängig voneinander.


<!-- Definition: Stichprobenkorrelation -->
# Grundbegriffe der Korrelation

\footnotesize
\begin{definition}[Stichprobenkorrelation]

\justifying
$\{(x_1,y_1),...,(x_n,y_n)\} \subset \mathbb{R}^2$ sei ein Datensatz. Weiterhin seien:

\begin{itemize}

\item die Stichprobenmittel der $x_i$ und $y_i$ definiert als
\begin{equation}
\bar{x} := \frac{1}{n}\sum_{i=1}^n x_i
\mbox{ und }
\bar{y} := \frac{1}{n}\sum_{i=1}^n y_i \; ,
\end{equation}

\item die Stichprobenstandardabweichungen $x_i$ und $y_i$ definiert als
\begin{equation}
s_x := \sqrt{\frac{1}{n-1}\sum_{i=1}^n(x_i - \bar{x})^2}
\mbox{ und }
s_y := \sqrt{\frac{1}{n-1}\sum_{i=1}^n(y_i - \bar{y})^2} \; ,
\end{equation}

\item die Stichprobenkovarianz der $(x_1,y_1),...,(x_n,y_n)$ definiert als
\begin{equation}
c_{xy} := \frac{1}{n-1}\sum_{i=1}^n (x_i - \bar{x})(y_i - \bar{y}) \; .
\end{equation}

\end{itemize}

Dann ist die \textit{Stichprobenkorrelation} der $(x_1,y_1),...,(x_n,y_n)$ definiert als
\begin{equation}
r_{xy} := \frac{c_{xy}}{s_xs_y}
\end{equation}
und wird auch \textit{Stichprobenkorrelationskoeffizient} genannt.

\end{definition}


<!-- Beispiel: Stichprobenkorrelation -->
# Grundbegriffe der Korrelation

Beispiel
\vspace{2mm}
\tiny

\setstretch{1.2}
```{r, echo = T}
# Laden des Beispieldatensatzes
fname = "Daten/Korrelation_Simulation.csv"                                # Dateipfad generieren
D     = read.table(fname, sep = ",", header = TRUE)                       # Beispieldatensatz als Dataframe laden
x_i   = D$x_i                                                             # x_i Werte
y_i   = D$y_i                                                             # y_i Werte
n     = length(x_i)                                                       # n

# "manuelle" Berechnung der Stichprobenkorrelation
x_bar = (1/n)*sum(x_i)                                                    # \bar{x}
y_bar = (1/n)*sum(y_i)                                                    # \bar{y}
s_x   = sqrt(1/(n-1)*sum((x_i - x_bar)^2))                                # s_x
s_y   = sqrt(1/(n-1)*sum((y_i - y_bar)^2))                                # s_y
c_xy  = 1/(n-1) * sum((x_i - x_bar) * (y_i - y_bar))                      # c_{xy}
r_xy  = c_xy/(s_x * s_y)                                                  # r_{xy}
print(r_xy)                                                               # Ausgabe

# automatische Berechnung mit der R-Funktion cor()
r_xy  = cor(x_i,y_i)                                                      # r_{xy}
print(r_xy)                                                               # Ausgabe
```

\center
\small
$\Rightarrow$ Anzahl Therapiestunden und Symptomreduktion sind hochkorreliert.


<!-- Mechanik der Kovariationsterme -->
# Grundbegriffe der Korrelation

Mechanik der Kovariationsterme

```{r, echo = F, out.width = "80%"}
knitr::include_graphics("Abbildungen/korrelationsterme.pdf")
```

\center
\footnotesize
häufige richtungsgleiche Abweichung der $x_i$ und $y_i$ von ihren Mittelwerten $\Rightarrow$ positive Korrelation

häufige richtungsungleiche Abweichung der $x_i$ und $y_i$ von ihren Mittelwerten $\Rightarrow$ negative Korrelation

keine häufigen richtungsgleichen oder richtungsungleichen Abweichungen $\Rightarrow$ keine Korrelation


<!-- Beispiele: Stichprobenkorrelation -->
# Grundbegriffe der Korrelation

\vspace{2mm}
Beispiele
\vspace{-2mm}

```{r, eval = F, echo = F}
library(MASS)
graphics.off()
dev.new()
par(
    family      = "sans",
    mfcol       = c(3,3),
    pty         = "s",
    bty         = "l",
    lwd         = 1,
    las         = 1,
    mgp         = c(2,1,0),
    xaxs        = "i",
    yaxs        = "i",
    font.main   = 1,
    cex         = 1,
    cex.main    = 1.3)

# Modellformulierung
n           = 30                                # Anzahl an Stichprobenvektoren
mu          = c(0,0)                            # Erwartungswertparameter
sigma_1     = 1                                 # \sigma_1
sigma_2     = 1                                 # \sigma_2
rho_12      = c( 0.8, 0.2, -0.4,                # \rho_12
                 0.6, 0.0, -0.6,
                 0.4,-0.2, -0.8)

# Datenrealisierung und Visualisierung
set.seed(1)
for(rho in rho_12){
    Sigma  = matrix(c(sigma_1^2,           rho*sigma_1*sigma_2,
                      rho*sigma_1*sigma_2, sigma_2^2),
                    nrow = 2)
    xy     = mvrnorm(n, mu, Sigma)
    plot(xy,
        pch         = 21,
        col         = "white",
        bg          = "black",
        xlab        = TeX("$x$"),
        ylab        = TeX("$y$"),
        xlim        = c(-3,3),
        ylim        = c(-3,3),
        main        = TeX(sprintf("$r_{xy}$ = %.2f", cor(xy[,1],xy[,2]))))
}

# Speicherung
dev.copy2pdf(
    file        = "Abbildungen/korrelationsbeispiele.pdf",
    width       = 11,
    height      = 11)
```

```{r, echo = F, out.width = "70%"}
knitr::include_graphics("Abbildungen/korrelationsbeispiele.pdf")
```


<!-- Theorem: Korrelation und linear-affine Abhängigkeit -->
# Grundbegriffe der Korrelation

\small
\begin{theorem}[Korrelation und linear-affine Abhängigkeit]

\justifying
\normalfont
$\xi$ und $\upsilon$ seien zwei Zufallsvariablen mit positiver Varianz. Dann gilt: Ihre Korrelation beträgt
\begin{equation}
\rho(\xi,\upsilon) = 1 \mbox{ oder } \rho(\xi,\upsilon) = -1
\end{equation}

genau dann, wenn eine lineare-affine Abhängigkeit der folgenden Form zwischen $\xi$ und $\upsilon$ besteht: 
\begin{equation}
\upsilon = \beta_0 + \beta_1\xi \mbox{ mit } \beta_0,\beta_1\in \mathbb{R} \; .
\end{equation}

\end{theorem}

\footnotesize
Bemerkungen

* Die linear-affine Abhängigkeit $\upsilon = \beta_0 + \beta_1\xi$  impliziert eine linear-affine Abhängigkeit $\xi = \tilde{\beta}_0 + \tilde{\beta}_1\upsilon$, denn
\begin{equation}
\upsilon = \beta_0 + \beta_1\xi
\Leftrightarrow
-\beta_0 + \upsilon = \beta_1\xi
\Leftrightarrow
\xi = -\frac{\beta_0}{\beta_1} + \frac{1}{\beta_1}\upsilon
\Leftrightarrow
\xi = \tilde{\beta}_0 + \tilde{\beta}_1\upsilon \; ,
\end{equation}
wobei wie folgt ersetzt wurde:
\begin{equation}
\tilde{\beta}_0 = -\frac{\beta_0}{\beta_1} \mbox{ und } \tilde{\beta}_1 = \frac{1}{\beta_1} \; .
\end{equation}


<!-- Beweis -->
# Grundbegriffe der Korrelation

\footnotesize
\underline{Beweis}

\setstretch{1.2}
Wir beschränken uns auf den Beweis der Aussage, dass aus $\upsilon = \beta_0 + \beta_1\xi$ folgt, dass $\rho(\xi,\upsilon) = \pm 1$ ist. Dazu halten wir zunächst fest, dass mit den Theoremen zu Erwartungswert, Varianz und Standardabweichung gilt, dass
\begin{equation}
\mathbb{E}(\upsilon) = \beta_0 + \beta_1\mathbb{E}(\xi)
\mbox{ und }
\mathbb{V}(\upsilon) = \beta_1^2 \mathbb{V}(\xi)
\mbox{ und somit }
\mathbb{S}(\upsilon) = \pm \beta_1 \mathbb{S}(\xi) \; .
\end{equation}

Wegen $\mathbb{V}(\xi) > 0$ und  $\mathbb{V}(\upsilon) > 0$ gilt damit $\beta_1 \neq 0$. Weiterhin gilt:
\begin{align}
\begin{split}
\upsilon - \mathbb{E}(\upsilon)
& = \beta_0 + \beta_1\xi - \mathbb{E}(\upsilon) \\
& = \beta_0 + \beta_1\xi - \beta_0 - \beta_1\mathbb{E}(\xi) \\
& = \beta_1\xi - \beta_1\mathbb{E}(\xi) \\
& = \beta_1(\xi -\mathbb{E}(\xi)) \; .
\end{split}
\end{align}

Für die Kovarianz von $\xi$ und $\upsilon$ ergibt sich also:
\begin{align}
\begin{split}
\mathbb{C}(\xi,\upsilon)
& = \mathbb{E}\left((\upsilon - \mathbb{E}(\upsilon))(\xi - \mathbb{E}(\xi))\right) \\
& = \mathbb{E}\left(\beta_1(\xi - \mathbb{E}(\xi))(\xi - \mathbb{E}(\xi))\right) \\
& = \beta_1\mathbb{E}\left((\xi - \mathbb{E}(\xi))^2\right) \\
& = \beta_1\mathbb{V}(\xi) \; .
\end{split}
\end{align}

Damit ergibt für die Korrelation von $\xi$ und $\upsilon$:
\begin{equation}
\rho(\xi,\upsilon)
= \frac{\mathbb{C}(\xi,\upsilon)}{\mathbb{S}(\xi)\mathbb{S}(\upsilon)}
= \pm \frac{\beta_1\mathbb{V}(\xi)}{\mathbb{S}(\xi)\beta_1 \mathbb{S}(\xi)}
= \pm \frac{\beta_1\mathbb{V}(\xi)}{\beta_1\mathbb{V}(\xi)}
= \pm 1.
\end{equation}
$\hfill\Box$


<!-- Beispiele: Stichprobenkorrelation -->
# Grundbegriffe der Korrelation

Beispiele
\vspace{4mm}

```{r, echo = F, out.width = "100%"}
knitr::include_graphics("Abbildungen/correlation_examples.png")
```

\vspace{2mm}
\center
\footnotesize
(Quelle: [*Wikimedia Commons*: "Correlation_examples.png"](https://commons.wikimedia.org/wiki/File:Correlation_examples.png); Lizenz: gemeinfrei.)


<!-- Abschnitt 2: Korrelation und Bestimmtheitsmaß -->
#

\setstretch{3}
\vfill
\large

Grundbegriffe der Korrelation

**Korrelation und Bestimmtheitsmaß**

Anwendung/Praxis

Selbstkontrollfragen

\vfill


<!-- Überblick -->
# Korrelation und Bestimmtheitsmaß

Überblick
\setstretch{2}

\footnotesize
Das sogenannte Bestimmtheitsmaß $\mbox{R}^2$ ist eine beliebte Statistik.

Numerisch ist $\mbox{R}^2$ das Quadrat des Stichprobenkorrelationskoeffizienten.

Ist die Stichprobenkorrelation $r_{xy} = 0.5$, dann ist $\mbox{R}^2 = 0.25$, ist $r_{xy} = -0.5$, dann ist $\mbox{R}^2 = 0.25$.

$\Rightarrow \mbox{R}^2$ enthält also weniger Information über die Rohdaten als $r_{xy}$, da das Vorzeichen wegfällt.

$\Rightarrow$ \textit{Per se} ist die Angabe von $\mbox{R}^2$ anstelle von $r_{xy}$ im Kontext der Korrelation zweier Variablen wenig sinnvoll.

Ein tieferes Verständnis von $\mbox{R}^2$ erlaubt jedoch
\vspace{-2mm}

(1) einen Einstieg in das Konzept von Quadratsummenzerlegungen, ein wichtiges ALM-Evaluationsprinzip;
(2) einen Einstieg in das Verständnis der Zusammenhänge von Ausgleichsgerade und Stichprobenkorrelation;
(3) einen ersten Einblick in die Tatsache, dass Korrelationen (nur) linear-affine Zusammenhänge quantifizieren.


<!-- Definition: Erklärte Werte und Residuen einer Ausgleichsgerade -->
# Korrelation und Bestimmtheitsmaß

\small
\begin{definition}[Erklärte Werte und Residuen einer Ausgleichsgerade]

\justifying
Gegeben seien ein Datensatz $\{(x_1,y_1), ..., (x_n,y_n)\} \subset \mathbb{R}^2$
und die zu diesem Datensatz gehörende Ausgleichsgerade
\begin{equation}
f_{\hat{\beta}} : \mathbb{R} \to \mathbb{R}, x \mapsto f_{\hat{\beta}}(x) := \hat{\beta}_0 + \hat{\beta}_1x.
\end{equation}

Dann werden für $i = 1,...,n$
\begin{equation}
\hat{y}_i := \hat{\beta}_0 + \hat{\beta}_1x_i
\end{equation}
die durch die Ausgleichsgerade \textit{erklärten Werte} genannt und
\begin{equation}
\hat{\varepsilon}_i := y_i - \hat{y}_i
\end{equation}
die \textit{Residuen} der Ausgleichsgerade genannt.

\end{definition}

\footnotesize
Bemerkungen

* \justifying Die *erklärten Werte* sind die Datenvorhersage des Modells, basierend auf den geschätzten Parameterwerten.
* Die *Residuen* sind die Differenzen zwischen geschätzter Datenvorhersage und beobachteten Datenwerten.


<!-- Beispiel: Erklärte Werte und Residuen -->
# Korrelation und Bestimmtheitsmaß

Erklärte Werte und Residuen einer Ausgleichsgerade

```{r, echo = F, eval = F}
# Einlesen des Beispieldatensatzes
fname       = "Daten/Korrelation_Simulation.csv"
D           = read.table(fname, sep = ",", header = TRUE)

# Ausgleichsgeradenparameter
x_bar       = mean(D$x_i)               # Stichprobenmittel der x_i-Werte
y_bar       = mean(D$y_i)               # Stichprobenmittel der y_i-Werte
s2x         = var(D$x_i)                # Stichprobenvarianz der x_i-Werte
cxy         = cov(D$x_i, D$y_i)         # Stichprobenkovarianz der (x_i,y_i)-Werte
beta_1_hat  = cxy/s2x                   # \hat{\beta}_1, Steigungsparameter
beta_0_hat  = y_bar - beta_1_hat*x_bar  # \hat{\beta}_0, Offset Parameter

# Visualisierung
graphics.off()
dev.new()
par(
    family      = "sans",
    mfcol       = c(1,1),
    pty         = "s",
    bty         = "l",
    lwd         = 1,
    las         = 1,
    mgp         = c(2,1,0),
    xaxs        = "i",
    yaxs        = "i",
    font.main   = 1,
    cex         = 1,
    cex.main    = 1)
plot(D$x_i, D$y_i,
    pch         = 16,
    xlab        = "Anzahl Therapiestunden (x)",
    ylab        = "Symptomreduktion (y)",
    xlim        = c(0,21),
    ylim        = c(-10, 40))
abline(
    coef        = c(beta_0_hat, beta_1_hat),
    lty         = 1,
    col         = "black")
points(D$x_i, beta_0_hat + beta_1_hat*D$x_i,
    pch         = 16,
    col         = "grey")
arrows(
    x0          = D$x_i,
    y0          = D$y_i,
    x1          = D$x_i,
    y1          = beta_0_hat + beta_1_hat*D$x_i,
    length      = 0,
    col         = "grey")
points(mean(D$x_i), mean(D$y_i),
    pch         = 16,
    col         = "Blue")
dev.copy2pdf(
    file        = "Abbildungen/erklaertewerte_residuen.pdf",
    width       = 4,
    height      = 4)
```

```{r, echo = F, out.width = "60%"}
knitr::include_graphics("Abbildungen/erklaertewerte_residuen.pdf")
```

\vspace{-5mm}
\center
$\bullet$ $(x_i, y_i)$                                    \hspace{2mm}
\textcolor{blue}{$\bullet$} $(\bar{x},\bar{y})$           \hspace{2mm}
\textbf{---} $f_{\hat{\beta}}(x)$                         \hspace{2mm}
\textcolor{lightgray}{$\bullet$} $(x_i, \hat{y}_i)$       \hspace{2mm}
\textcolor{lightgray}{\textbf{---}} $\hat{\varepsilon}_i$ \hspace{2mm}
$i = 1,...,n$


<!-- Motivation -->
# Korrelation und Bestimmtheitsmaß

Motivation
\setstretch{2}

\small
Die in einer abhängigen Variable enthaltene Gesamtvarianz lässt sich in verschiedene Beiträge partitionieren: denjenigen Teil der Varianz, der sich mit Rückgriff auf unabhängige Variablen erklären lässt (*erklärte Varianz*), und denjenigen Teil der Varianz, der aus dem Beitrag von Zufallsvariablen resultiert (*nicht-erklärte Varianz*).

Dieser Gedanke bildet die Grundlage für die Methode der Quadratsummenzerlegung. Wir werden diese im Folgenden zunächst am Beispiel der einfachen linearen Regression mit Ausgleichsgerade betrachten und das Konzept später im Rahmen von einfaktorieller und zweifaktorieller Varianzanalysen wieder aufgreifen.

\vfill


<!-- Definition: Quadratsummen -->
# Korrelation und Bestimmtheitsmaß

\small
\begin{definition}[Quadratsummen]

\justifying
\normalfont
Für einen Datensatz $\{(x_1,y_1), ..., (x_n,y_n)\} \subset \mathbb{R}^2$ und seine
zugehörige Ausgleichsgerade $f_{\hat{\beta}}$ seien
\begin{equation}
\bar{y} := \frac{1}{n}\sum_{i=1}^n y_i \mbox{ und }
\hat{y}_i := \hat{\beta}_0 + \hat{\beta}_1x_i, \mbox{ für } i= 1,...,n
\end{equation}
das Stichprobenmittel der $y$-Werte und die durch die Ausgleichsgerade erklärten Werte. Dann sind
\center
\vspace{3mm}
\begin{tabular}{ll}
$\mbox{SQT} := \sum_{i = 1}^n (y_i - \bar{y})^2$       & die \textit{totale Quadratsumme}     \\ \\
$\mbox{SQE} := \sum_{i = 1}^n (\hat{y}_i - \bar{y})^2$ & die \textit{erklärte Quadratsumme}   \\ \\
$\mbox{SQR} := \sum_{i = 1}^n (y_i - \hat{y}_i)^2$     & die \textit{residuelle Quadratsumme} \\
\end{tabular}

\end{definition}

\footnotesize
Bemerkungen

* SQT wird auch als *total sum of squares* (TSS) bezeichnet.
* SQE wird auch als *explained sum of squares* (ESS) bezeichnet.
* SQR wird auch als *residual sum of squares* (RSS) bezeichnet.


<!-- Bemerkungen -->
# Korrelation und Bestimmtheitsmaß

\footnotesize
\setstretch{1.2}
Bemerkungen (fortgeführt)

\begin{itemize}

\item SQT repräsentiert die Gesamtstreuung der $y_i$-Werte um ihren Mittelwert $\bar{y}$. 

\item SQE repräsentiert die Streuung der erklärten Werte $\hat{y}_i$ um ihren Mittelwert.
\item[] $\Rightarrow$ Große Werte von SQE repräsentieren eine große absolute Steigung der $y_i$ mit den $x_i$.
\item[] $\Rightarrow$ Kleine Werte von SQE repräsentieren eine kleine absolute Steigung der $y_i$ mit den $x_i$.
\item SQE ist also ein Maß für die Stärke des linearen Zusammenhangs der $x_i$- und $y_i$-Werte.

\item SQR ist die Summe der quadrierten Residuen. Es gilt:
\begin{equation}
\mbox{SQR} := \sum_{i = 1}^n (y_i - \hat{y}_i)^2 = \sum_{i = 1}^n (y_i - f_{\hat{\beta}}(x_i))^2 := \sum_{i=1}^n \hat{\varepsilon}_i^2.
\end{equation}
\item[] $\Rightarrow$ Große Werte von SQR repräsentieren große Abweichungen der erklärten von den beobachteten $y_i$-Werten.
\item[] $\Rightarrow$ Kleine Werte von SQR repräsentieren geringe Abweichungen der erklärten von den beobachteten $y_i$-Werten.
\item SQR ist also ein Maß für die Güte der Beschreibung der Datenmenge durch die Ausgleichsgerade.

\end{itemize}


<!-- Theorem: Quadratsummenzerlegung bei Ausgleichsgerade -->
# Korrelation und Bestimmtheitsmaß

\small
\begin{theorem}[Quadratsummenzerlegung bei Ausgleichsgerade]

\justifying
\normalfont
Für einen Datensatz $\{(x_1,y_1), ..., (x_n,y_n)\} \subset \mathbb{R}^2$ und seine zugehörige Ausgleichsgerade $f_{\hat{\beta}}$ seien SQT, SQE und SQR die totale, die erklärte und die residuelle Quadratsumme. Dann gilt
\begin{equation}
\mbox{SQT} = \mbox{SQE} + \mbox{SQR}
\end{equation}

\end{theorem}

\footnotesize
Bemerkungen

* Die totale Quadratsumme entspricht der Summe aus erklärter Quadratsumme und residueller Quadratsumme.


<!-- Beweis -->
# Korrelation und Bestimmtheitsmaß

\footnotesize
\setstretch{1}
\underline{Beweis}

Wir schreiben zunächst die totale Quadratsumme aus:
\begin{align}
\begin{split}
   \mbox{SQT}
&= \sum_{i=1}^n (y_i - \bar{y})^2 \\
&= \sum_{i=1}^n (y_i - \hat{y}_i  + \hat{y}_i - \bar{y})^2 \\
&= \sum_{i=1}^n ((y_i - \hat{y}_i)  + (\hat{y}_i - \bar{y}))^2 \\
&= \sum_{i=1}^n \left((y_i - \hat{y}_i)^2  + 2(y_i - \hat{y}_i)(\hat{y}_i - \bar{y}) + (\hat{y}_i - \bar{y})^2\right) \\
&= \sum_{i=1}^n(\hat{y}_i - \bar{y})^2  + 2\sum_{i=1}^n(y_i - \hat{y}_i)(\hat{y}_i - \bar{y})  + \sum_{i=1}^n (y_i - \hat{y}_i)^2\\
&= \mbox{SQE}  + 2\sum_{i=1}^n(y_i - \hat{y}_i)(\hat{y}_i - \bar{y})  + \mbox{SQR} \; .
\end{split}
\end{align}

Es verbleibt also zu zeigen, dass der mittlere Term Null ist:
\begin{equation}
2\sum_{i=1}^n(y_i - \hat{y}_i)(\hat{y}_i - \bar{y}) = 0 \; .
\end{equation}



<!-- Beweis -->
# Korrelation und Bestimmtheitsmaß

\footnotesize
\underline{Beweis (fortgeführt)}

Unter Gebrauch des Ausdrucks $\hat{y}_i = \hat{\beta}_0 + \hat{\beta}_1 x_i$ für die erklärten Werte einer Ausgleichsgerade und nach Einsetzen des Ausgleichsgeradenparameters $\hat{\beta}_0 = \bar{y} - \hat{\beta}_1 \bar{x}$ (siehe Einheit (1) in *Allgemeines Lineares Modell*) ergibt sich dann für diese Summe zunächst:

\begin{align}
\begin{split}
   \sum_{i=1}^{n} 2 (y_i - \hat{y}_i) (\hat{y}_i - \bar{y})
&= \sum_{i=1}^{n} 2 (y_i - \hat{\beta}_0 - \hat{\beta}_1 x_i) (\hat{\beta}_0 + \hat{\beta}_1 x_i - \bar{y}) \\
&= \sum_{i=1}^{n} 2 (y_i - \bar{y} + \hat{\beta}_1 \bar{x} - \hat{\beta}_1 x_i) (\bar{y} - \hat{\beta}_1 \bar{x} + \hat{\beta}_1 x_i - \bar{y}) \\
&= \sum_{i=1}^{n} 2 \left( (y_i - \bar{y}) - (\hat{\beta}_1 x_i - \hat{\beta}_1 \bar{x}) \right) (\hat{\beta}_1 x_i - \hat{\beta}_1 \bar{x}) \\
&= 2 \sum_{i=1}^{n} \left( (y_i - \bar{y}) - \hat{\beta}_1 (x_i - \bar{x}) \right) \hat{\beta}_1 (x_i - \bar{x}) \\
&= 2 \sum_{i=1}^{n} \left( (y_i - \hat{y}_i) \hat{\beta}_1 (x_i - \bar{x}) - \hat{\beta}_1 (x_i - \bar{x}) \hat{\beta}_1 (x_i - \bar{x}) \right) \\
&= 2 \left( \hat{\beta}_1 \sum_{i=1}^{n} (y_i - \hat{y}_i) (x_i - \bar{x}) - \hat{\beta}_1^2 \sum_{i=1}^{n} (x_i - \bar{x}) (x_i - \bar{x}) \right) \; .
\end{split}
\end{align}


<!-- Beweis -->
# Korrelation und Bestimmtheitsmaß

\footnotesize
\underline{Beweis (fortgeführt)}

Hierin erkennen wir nun Vielfache der Stichprobenkovarianz $c_{xy}$ und der Stichprobenvarianz $s_x^2$:

\begin{align}
\begin{split}
   \sum_{i=1}^{n} 2 (y_i - \hat{y}_i) (\hat{y}_i - \bar{y})
&= 2 \left( \hat{\beta}_1 (n-1) c_{xy} - \hat{\beta}_1^2 (n-1) s_x^2 \right) \\
&= 2 (n-1) \left( \hat{\beta}_1 c_{xy} - \hat{\beta}_1^2 s_x^2 \right) \; .
\end{split}
\end{align}

Einsetzen des Ausgleichsgeradenparameters $\hat{\beta}_1 = c_{xy} / s_x^2$ ergibt schließlich:

\begin{align}
\begin{split}
   \sum_{i=1}^{n} 2 (y_i - \hat{y}_i) (\hat{y}_i - \bar{y})
&= 2 (n-1) \left( \left( \frac{c_{xy}}{s_x^2} \right) c_{xy} - \left( \frac{c_{xy}}{s_x^2} \right)^2 s_x^2 \right) \\
&= 2 (n-1) \left( \frac{c_{xy}^2}{s_x^2} - \frac{c_{xy}^2}{s_x^2} \right) \\
&= 2 (n-1) \cdot 0 \\
&= 0 \; .
\end{split}
\end{align}
$\hfill\Box$


<!-- Definition: Bestimmtheitsmaß R² -->
# Korrelation und Bestimmtheitsmaß

\small
\begin{definition}[Bestimmtheitsmaß $\mbox{R}^2$]

\justifying
Für einen Datensatz $\{(x_1,y_1), ..., (x_n,y_n)\} \subset \mathbb{R}^2$ und seine zugehörige Ausgleichsgerade $f_{\hat{\beta}}$ sowie die zugehörige erklärte Quadratsumme $\mbox{SQE}$ und totale Quadratsumme $\mbox{SQT}$ heißt
\begin{equation}
\mbox{R}^2 := \frac{\mbox{SQE}}{\mbox{SQT}}
\end{equation}
\textit{Bestimmtheitsmaß} oder \textit{Determinationskoeffizient}.

\end{definition}

\footnotesize
Bemerkungen

\begin{itemize}

\item Es gilt $\mbox{R}^2 = 0$ genau dann, wenn $\mbox{SQE} = 0$ ist.
\item[] $\Rightarrow$ Für $\mbox{R}^2 = 0$ ist die erklärte Streuung der Daten durch die Ausgleichsgerade gleich null.
\item[] $\Rightarrow$ $\mbox{R}^2 = 0$ beschreibt also den Fall der schlechtestmöglichen Erklärung der Daten durch die Ausgleichsgerade.
\item Es gilt $\mbox{R}^2 = 1$ genau dann, wenn $\mbox{SQE} = \mbox{SQT}$ ist.
\item[] $\Rightarrow$ Für $\mbox{R}^2 = 1$ ist also die Gesamtstreuung gleich der durch die Ausgleichsgerade erklärten Streuung.
\item[] $\Rightarrow$ $\mbox{R}^2 = 1$ beschreibt also den Fall, dass sämtliche Datenvariabilität durch die Ausgleichsgerade erklärt wird.
\item Man sagt, dass $\mbox{R}^2$ ``der Anteil der durch die Ausgleichsgerade erklärten Varianz an der gesamten Varianz der beobachteten Daten'' ist.

\end{itemize}


<!-- Theorem: Bestimmtheitsmaß und residuelle Quadratsumme -->
# Korrelation und Bestimmtheitsmaß

\small
\begin{theorem}[Bestimmtheitsmaß und residuelle Quadratsumme]

\justifying
\normalfont
Für einen Datensatz $\{(x_1,y_1), ..., (x_n,y_n)\} \subset \mathbb{R}^2$ seien $\mbox{R}^2$ das Bestimmtheitsmaß sowie $\mbox{SQR}$ und $\mbox{SQT}$ die residuelle bzw. totale Quadratsumme. Dann lässt sich $\mbox{R}^2$ alternativ ausdrücken als
\begin{equation}
\mbox{R}^2 = 1 - \frac{\mbox{SQR}}{\mbox{SQT}} \; .
\end{equation}

\end{theorem}

\footnotesize
Bemerkungen
\vspace{-1mm}

* Es gilt $\mbox{R}^2 = 0$ genau dann, wenn $\mbox{SQR} = \mbox{SQT}$ ist.
* Es gilt $\mbox{R}^2 = 1$ genau dann, wenn $\mbox{SQR} = 0$ ist.

\vspace{1mm}
\underline{Beweis}

Mit der Definition von $\mbox{R}^2$ und dem Theorem zur Quadratsummenzerlegung bei Ausgleichsgerade gilt
\begin{equation}
\mbox{R}^2
:= \frac{\mbox{SQE}}{\mbox{SQT}}
 = \frac{\mbox{SQT}-\mbox{SQR}}{\mbox{SQT}}
 = \frac{\mbox{SQT}}{\mbox{SQT}} - \frac{\mbox{SQR}}{\mbox{SQT}}
 = 1 - \frac{\mbox{SQR}}{\mbox{SQT}} \; .
\end{equation}


<!-- Theorem: Stichprobenkorrelation und Bestimmtheitsmaß -->
# Korrelation und Bestimmtheitsmaß

\small
\begin{theorem}[Stichprobenkorrelation und Bestimmtheitsmaß]

\justifying
\normalfont
Für einen Datensatz $\{(x_1,y_1), ..., (x_n,y_n)\} \subset \mathbb{R}^2$ sei
$\mbox{R}^2$ das Bestimmtheitsmaß und $r_{xy}$ sei die Stichprobenkorrelation. Dann gilt
\begin{equation}
\mbox{R}^2 = r_{xy}^2.
\end{equation}

\end{theorem}

\footnotesize
Bemerkungen

* Bei zwei Variablen entspricht das Bestimmtheitsmaß dem Quadrat der Stichprobenkorrelation.
* Mit $-1 \le r_{xy} \le 1$ folgt aus dem Theorem direkt, dass $0 \le \mbox{R}^2 \le 1$.


<!-- Beweis -->
# Korrelation und Bestimmheitsmaß

\vspace{2mm}
\footnotesize
\underline{Beweis}

Wir halten zunächst fest, dass mit
\begin{equation}
\bar{\hat{y}}
:= \frac{1}{n}\sum_{i=1}^n \hat{y}_i
= \frac{1}{n}\sum_{i=1}^n(\hat{\beta}_0 + \hat{\beta}_1x_i)
= \hat{\beta}_0 + \hat{\beta}_1\bar{x}
= \bar{y} - \hat{\beta}_1\bar{x} + \hat{\beta}_1\bar{x}
= \bar{y}
\end{equation}

folgt, dass
\begin{align}
\begin{split}
\mbox{SQE}
& = \sum_{i=1}^n (\hat{y}_i - \bar{y})^2 \\
& = \sum_{i=1}^n (\hat{y}_i - \bar{\hat{y}})^2 \\
& = \sum_{i=1}^n (\hat{\beta}_0 + \hat{\beta}_1x_i - \hat{\beta}_0 - \hat{\beta}_1 \bar{x})^2 \\
& = \sum_{i=1}^n (\hat{\beta}_1(x_i - \bar{x}))^2 \\
& = \hat{\beta}_1^2\sum_{i=1}^n (x_i - \bar{x})^2 \; .
\end{split}
\end{align}


<!-- Beweis -->
# Korrelation und Bestimmheitsmaß

\vspace{2mm}
\footnotesize
\underline{Beweis (fortgeführt)}

Damit ergibt sich dann
\begin{align}
\begin{split}
\mbox{R}^2
& = \frac{\mbox{SQE}}{\mbox{SQT}} \\
& = \frac{\sum_{i=1}^n (\hat{y}_i - \bar{y})^2}{\sum_{i = 1}^n (y_i - \bar{y})^2} \\
& = \hat{\beta}_1^2\frac{\sum_{i=1}^n (x_i - \bar{x})^2}{\sum_{i = 1}^n (y_i - \bar{y})^2} \\
& = \frac{c_{xy}^2}{s_x^4} \frac{\frac{1}{n-1}\sum_{i=1}^n (x_i - \bar{x})^2}{\frac{1}{n-1}\sum_{i = 1}^n (y_i - \bar{y})^2} \\
& = \frac{c_{xy}^2}{s_x^4} \frac{s_x^2}{s_y^2} \\
& = \frac{c_{xy}^2}{s_x^2s_y^2} \\
& = \left(\frac{c_{xy}}{s_xs_y}\right)^2 \\
& = r_{xy}^2 \; .
\end{split}
\end{align}
$\hfill\Box$


<!-- Beispiele: Bestimmheitsmaß -->
# Korrelation und Bestimmheitsmaß

\vspace{2mm}
Beispiele
\vspace{-2mm}

```{r, eval = F, echo = F}
library(MASS)
graphics.off()
dev.new()
par(
    family      = "sans",
    mfcol       = c(3,3),
    pty         = "s",
    bty         = "l",
    lwd         = 1,
    las         = 1,
    mgp         = c(2,1,0),
    xaxs        = "i",
    yaxs        = "i",
    font.main   = 1,
    cex         = 1,
    cex.main    = 1.2)

# Modellformulierung
n           = 30                                # Anzahl an Stichprobenvektoren
mu          = c(0,0)                            # Erwartungswertparameter
sigma_1     = 1                                 # \sigma_1
sigma_2     = 1                                 # \sigma_2
rho_12      = c( 0.8, 0.2, -0.4,                # \rho_12
                 0.6, 0.0, -0.6,
                 0.4,-0.2, -0.8)

# Datenrealisierung, Datenanalyse und Visualisierung
set.seed(1)
for(rho in rho_12){

    # Datenrealisierung
    Sigma  = matrix(c(sigma_1^2,           rho*sigma_1*sigma_2,
                      rho*sigma_1*sigma_2, sigma_2^2),
                    nrow = 2)
    xy     = mvrnorm(n, mu, Sigma)
    x      = xy[,1]
    y      = xy[,2]

    # Ausgleichsgeradenparameter
    x_bar       = mean(x)                   # Stichprobenmittel der x_i-Werte
    y_bar       = mean(y)                   # Stichprobenmittel der y_i-Werte
    s2x         = var(x)                    # Stichprobenvarianz der x_i-Werte
    cxy         = cov(x,y)                  # Stichprobenkovarianz der (x_i,y_i)-Werte
    beta_1_hat  = cxy/s2x                   # \hat{\beta}_1, Steigungsparameter
    beta_0_hat  = y_bar - beta_1_hat*x_bar  # \hat{\beta}_0, Offset Parameter

    # Visualisierung
    plot(xy,
        pch         = 21,
        col         = "white",
        bg          = "black",
        xlab        = TeX("$x$"),
        ylab        = TeX("$y"),
        xlim        = c(-3,3),
        ylim        = c(-3,3),
        main        = TeX(sprintf("$r_{xy}$ = %.2f, $R^2$ = %.2f", cor(x,y),cor(x,y)^2)))
    abline(
        coef        = c(beta_0_hat, beta_1_hat),
        lty         = 1,
        col         = "black")
}

# Speichern
dev.copy2pdf(
    file        = "Abbildungen/r2beispiele.pdf",
    width       = 11,
    height      = 11)
```

```{r, echo = F, out.width = "70%"}
knitr::include_graphics("Abbildungen/r2beispiele.pdf")
```


<!-- Abschnitt 3: Anwendung/Praxis -->
#
\setstretch{3}
\vfill
\large

Grundbegriffe der Korrelation

Korrelation und Bestimmtheitsmaß

**Anwendung/Praxis**

Selbstkontrollfragen

\vfill


<!-- Funktionale Abhängigkeiten und Stichprobenkorrelation -->
# Anwendung/Praxis

Funktionale Abhängigkeiten und Stichprobenkorrelation

```{r, eval = F, echo = F}
library(MASS)
graphics.off()
dev.new()
par(
    family      = "sans",
    mfcol       = c(1,3),
    pty         = "s",
    bty         = "l",
    lwd         = 1,
    las         = 1,
    mgp         = c(2,1,0),
    xaxs        = "i",
    yaxs        = "i",
    font.main   = 1,
    cex         = 1.1,
    cex.main    = 1.2,
    xpd         = TRUE)

# Modellformulierung und Datenrealisierungen
set.seed(1)
n           = 40
x           = seq(-pi,pi,len = n)
eps         = rnorm(n)
y_all       = list(x + eps, x^2 + eps, 8*cos(2*x) + eps)

# Visualisierung
for(y in y_all){
    plot(x, y,
        pch   = 21,
        bg    = "black",
        col   = "white",
        xlim  = c(-3.5,3.5),
        main  = TeX(sprintf("$r_{xy}$ = %.2f", cor(x,y))))
}

# Speichern
dev.copy2pdf(
    file        = "Abbildungen/rlinearitaet.pdf",
    width       = 11,
    height      = 4)
```

```{r, echo = F, out.width = "100%"}
knitr::include_graphics("Abbildungen/rlinearitaet.pdf")
```

\vspace{-5mm}
$\,$
\hspace{1.1cm}
$y_i = x_i + \varepsilon_i$
\hspace{1.8cm}
$y_i = x_i^2 + \varepsilon_i$
\hspace{1.4cm}
$y_i = 8 \cos(2x_i) + \varepsilon_i$

\vspace{1mm}
\center
$\quad \quad \! \varepsilon_i \sim N(0,1)$


<!-- Theorem: Stichprobenkorrelation bei linear-affinen Transformationen -->
# Anwendung/Praxis

\footnotesize
\begin{theorem}[Stichprobenkorrelation bei linear-affinen Transformationen]

\justifying
\normalfont
Für einen Datensatz $\{(x_i,y_i)\}_{i = 1,...n} \subset \mathbb{R}^2$ sei
$\{(\tilde{x}_i,\tilde{y}_i)\}_{i = 1,...n} \subset \mathbb{R}^2$ eine linear-affin
transformierte Wertemenge mit
\begin{equation}
(\tilde{x}_i, \tilde{y}_i) = (a_x x_i + b_x, a_y y_i + b_y), a_x,a_y \neq 0.
\end{equation}

Dann gilt
\begin{equation}
|r_{\tilde{x}\tilde{y}}| = |r_{xy}|.
\end{equation}

\end{theorem}

Bemerkungen

* Der Betrag der Stichprobenkorrelation ändert sich bei linear-affiner Datentransformation nicht.
* Man sagt, dass die Stichprobenkorrelation im Gegensatz zur Stichprobenkovarianz \textit{maßstabsunabhängig} ist.


<!-- Beweis -->
# Anwendung/Praxis

\footnotesize
\vspace{1mm}
\underline{Beweis}

Es gilt

\tiny
\begin{align}
\begin{split}
    r_{\tilde{x}\tilde{y}}
&:= \frac{\frac{1}{n-1}\sum_{i=1}^n (\tilde{x}_i - \bar{\tilde{x}})(\tilde{y}_i - \bar{\tilde{y}})}
         {\sqrt{\frac{1}{n-1}\sum_{i=1}^n \left(\tilde{x}_i - \bar{\tilde{x}}\right)^2} \sqrt{\frac{1}{n-1}\sum_{i=1}^n \left(\tilde{y}_i - \bar{\tilde{y}}\right)^2}} \\
& = \frac{\sum_{i=1}^n (a_x x_i + b_x - (a_x\bar{x} + b_x))(a_y y_i + b_y - (a_y \bar{y} + b_y))}
         {\sqrt{\sum_{i=1}^n (a_x x_i + b_x - (a_x \bar{x} + b_x))^2}\sqrt{\sum_{i=1}^n (a_y y_i + b_y - (a_y \bar{y} + b_y))^2}} \\
& = \frac{a_x a_y\sum_{i=1}^n (x_i-\bar{x})(y_i-\bar{y})}
         {\sqrt{a_x^2\sum_{i=1}^n (x_i  - \bar{x})^2}\sqrt{a_y^2\sum_{i=1}^n (y_i - \bar{y})^2}} \\
& = \frac{a_x a_y}{|a_x||a_y|}
    \frac{\sum_{i=1}^n (x_i-\bar{x})(y_i-\bar{y})}
         {\sqrt{\sum_{i=1}^n (x_i  - \bar{x})^2}\sqrt{\sum_{i=1}^n (y_i - \bar{y})^2}} \\
& = \frac{a_x a_y}{|a_x||a_y|}\frac{c_{xy}}{s_x s_y} \\
& = \frac{a_x a_y}{|a_x||a_y|}r_{xy}.
\end{split}
\end{align}

\footnotesize
Nach Durchspielen aller möglichen Vorzeichenfälle ergibt sich:
\begin{equation}
|r_{\tilde{x}\tilde{y}}| = |r_{xy}|.
\end{equation}
$\hfill\Box$


<!-- Beispiel: Körpergröße und Körpergewicht -->
# Anwendung/Praxis

Beispiel: Körpergröße und Körpergewicht in unterschiedlichen Einheiten ($n = 100$)

\vspace{-4mm}
\begin{equation}
y_i = -100 + 1 \, x_i + \varepsilon_{i}
\quad \mbox{ mit } \quad
\varepsilon_i \sim N(0,12^2)
\quad \mbox{ für } \quad
i = 1,\ldots,n
\end{equation}

\vspace{-6mm}
\begin{equation}
\tilde{x}_i = (x_i - 150) / 100
\quad \mbox{ und } \quad
\tilde{y}_i = (y_i - 70) \cdot 1000
\quad \mbox{ für } \quad
i = 1,\ldots,n
\end{equation}

```{r, echo = F, eval = F}
library(latex2exp)

# Simulation: unabhängige Variable
library(MASS)                                         # multivariate Normalverteilungen
set.seed(0)                                           # reproduzierbare Ergebnisse
n       = 100                                         # Anzahl Datenpunkte
mu_x    = 170                                         # Erwartungswert Größe
sigma_x = 10                                          # Standardabweichung Größe
x       = rnorm(n, mu_x, sigma_x)                     # unabhängige Variable

# Simulation: abhängige Variable
beta_0  =-100                                         # Offset-Parameter Größe -> Gewicht
beta_1  = 1                                           # Steigungsparameter Größe -> Gewicht
sigma   = 12                                          # Standardabweichung Gewicht
X       = matrix(c(rep(1,n), x), ncol = 2)            # Designmatrix
beta    = matrix(c(beta_0, beta_1), ncol = 1)         # Regressionskoeffizienten
mu      = X %*% beta                                  # Erwartungswert Gewicht
Sigma   = sigma^2 * diag(n)                           # Kovarianzmatrixparameter
y       = as.matrix(mvrnorm(1, mu, Sigma))            # Daten generieren

# Szenarien vorbereiten
nscn    = 2                                           # Anzahl Szenarien
x_i     = list()                                      # unabhängige Variable
y_i     = list()                                      # abhängige Variable
x_lab   = list()                                      # x-Achsen-Label
y_lab   = list()                                      # y-Achsen-Label
x_rng   = matrix(rep(0,nscn*2), ncol = 2)             # Minimum/Maximum Größe
y_rng   = matrix(rep(0,nscn*2), ncol = 2)             # Minimum/Maximum Gewicht
r_xy    = matrix(rep(0,nscn),   nrow = 1)             # Stichprobenkorrelation

# Iteration über Szenarien
for (k in 1:nscn) {

    # unabhängige und abhängige Variable
    if (k==1 ) { x_i[[k]] = x } else { x_i[[k]] = (x-150)/100 }
    if (k==1 ) { y_i[[k]] = y } else { y_i[[k]] = (y-70)*1000 }
    # if (k==1 ) { y_i[[k]] = y } else { y_i[[k]] = (y-70)/0.454 }

    # unabhängige und abhängige Labels
    if (k==1 ) {
        x_lab[[k]] = "Körpergröße [cm]"
        y_lab[[k]] = "Körpergewicht [kg]"
    } else {
        x_lab[[k]] = "Körpergröße [m], relativ zu 150 cm"
        y_lab[[k]] = "Körpergewicht [g], relativ zu 70 kg"
    }

    # Minimum/Maximum Größe und Gewicht
    x_rng[k,] = matrix(c(min(x_i[[k]]), max(x_i[[k]])), ncol = 2)
    y_rng[k,] = matrix(c(min(y_i[[k]]), max(y_i[[k]])), ncol = 2)

    # Stichprobenkorrelationsschätzung
    x_bar     = (1/n)*sum(x_i[[k]])
    y_bar     = (1/n)*sum(y_i[[k]])
    s_x       = sqrt(1/(n-1)*sum((x_i[[k]] - x_bar)^2))
    s_y       = sqrt(1/(n-1)*sum((y_i[[k]] - y_bar)^2))
    c_xy      = 1/(n-1) * sum((x_i[[k]] - x_bar) * (y_i[[k]] - y_bar))
    r_xy[k]   = c_xy/(s_x * s_y)

}

# Abbildungsparameter
graphics.off()
dev.new()
par(
    family      = "sans",
    mfrow       = c(1,2),
    mar         = c(4,4,2,2),
    pty         = "s",
    bty         = "l",
    lwd         = 1,
    las         = 1,
    mgp         = c(2.5,1,0),
    xaxs        = "i",
    yaxs        = "i",
    font.main   = 1,
    cex         = 1,
    cex.lab     = 0.8,
    cex.axis    = 0.6,
    cex.main    = 1)

# Iteration über Subplots
for (k in 1:nscn) {

    # Datenwerte
    plot(x_i[[k]], y_i[[k]],
        pch         = 16,
        xlim        = c(x_rng[k,1]-(1/10)*(x_rng[k,2]-x_rng[k,1]),
                        x_rng[k,2]+(1/10)*(x_rng[k,2]-x_rng[k,1])),
        ylim        = c(y_rng[k,1]-(1/10)*(y_rng[k,2]-y_rng[k,1]),
                        y_rng[k,2]+(1/10)*(y_rng[k,2]-y_rng[k,1])),
        xlab        = x_lab[[k]],
        ylab        = y_lab[[k]],
        main        = TeX(sprintf("$r_{xy}$ = %0.2f", r_xy[k])))

}

# Speicherung
dev.copy2pdf(
    file        = "Abbildungen/beispiel_groesse_gewicht.pdf",
    width       = 7,
    height      = 3.5)
```

```{r, echo = F, out.width = "90%"}
knitr::include_graphics("Abbildungen/beispiel_groesse_gewicht.pdf")
```

\vspace{-2mm}
\center
$\bullet \; (x_i, y_i), \; (\tilde{x}_i, \tilde{y}_i)$


<!-- Beispiel: Klausurzeit und Punktzahl -->
# Anwendung/Praxis

Sensitivität der Stichprobenkorrelation gegenüber Ausreißern

\center
\small
\vspace{2mm}
Beispiel: Klausurzeit und Punktzahl, ALM-Klausur, SoSe 2024 ($n = 56$)

\vspace{2mm}
```{r, echo = F, eval = F}
# load libraries
library(pracma)
library(openxlsx)
library(latex2exp)

# load results
filename = 'Daten/Klausur_Ergebnisse.csv'
D        = read.table(filename, sep = ",", header = TRUE)
D        = D[1:(nrow(D)-1),]                # remove last row
D        = D[,c(1:3,7,9:ncol(D))]           # keep columns of interest
D        = D[order(D$Nachname),]            # sort alphabetically by last name

# prepare results
n       = nrow(D)
q       = ncol(D)-4
points  = matrix(NA, nrow=n, ncol=q)
results = data.frame(Name  =rep('',n),
                     Punkte=rep(NA,n), 
                     Note  =rep(NA,n),
                     Zeit  =rep(NA,n))

# define grading
points2grade = c(rep(5.0, 15), 4.0,         # 0-14, 15
                 4.0, 3.7, 3.3, 3.3, 3.0,   # 16, 17, 18, 19, 20
                 2.7, 2.7, 2.3, 2.0, 2.0,   # 21, 22, 23, 24, 25
                 1.7, 1.3, 1.3, 1.0, 1.0)   # 26, 27, 28, 29, 30
grades       = rev(unique(points2grade))
grades_str   = c('1,0', '1,3', '1,7', '2,0', '2,3', '2,7', '3,0', '3,3', '3,7', '4,0', '5,0')

# analyze data
for (i in 1:n) {
    results$Name[i]   = sprintf('%s, %s', D$Nachname[i], D$Vorname[i])
    for (j in 1:q) {
        if (D[i,4+j] == '1,0') { points[i,j] = 1 }
        else                   { points[i,j] = 0 }
    }
    results$Punkte[i] = sum(points[i,])
    results$Note[i]   = points2grade[results$Punkte[i]+1]
    time_str          = D$Verbrauchte.Zeit[i]
    if (time_str == '1 Stunde') {
        minutes = 60
        seconds = 0
    } else {
        minutes = as.numeric(substr(time_str, 1, strfind(time_str, ' Minuten')))
        if (is.null(strfind(time_str, 'Sekunden'))) {
           seconds = 0
        } else {
           seconds = as.numeric(substr(time_str, strfind(time_str, 'Minuten')+7, strfind(time_str, ' Sekunden')))
        }
    }
    results$Zeit[i] = minutes + (seconds/60)
}

# evaluate results
num_succ = sum(results$Note<5)
num_fail = sum(results$Note>4)
num_zero = sum(results$Punkte==0)

# calculate correlation
x      = results$Zeit
y      = results$Punkte
r      = cor(x,y)
p      = cor.test(x,y)$p.value
X      = matrix(c(rep(1,n), x), ncol = 2)
b_hat  = solve(t(X) %*% X) %*% t(X) %*% y
x0     = results$Zeit[results$Punkte!=0]
y0     = results$Punkte[results$Punkte!=0]
r0     = cor(x0,y0)
p0     = cor.test(x0,y0)$p.value
X0     = matrix(c(rep(1,length(x0)), x0), ncol = 2)
b0_hat = solve(t(X0) %*% X0) %*% t(X0) %*% y0

# plot points against time
graphics.off()
dev.new()
par(
    family    = "sans",
    pty       = "m",
    bty       = "l",
    lwd       = 1,
    las       = 1,
    xaxs      = "i",
    yaxs      = "i",
    font.main = 1,
    cex       = 2,
    cex.main  = 1)
plot(x, y,
    pch       = 16,
    xlab      = "Zeit [min]",
    ylab      = "Punkte",
    ylim      = c(0-1, q+1),
    xlim      = c(0-1, max(results$Zeit)+1),
    cex       = 1,
    main      = TeX(sprintf('r = %.2f, p = %.2f (inkl. 0 Punkte); r = %.2f, p = %.2f (exkl. 0 Punkte)',
                    r, p, r0, p0)))
abline(
    coef      = c(b_hat[1], b_hat[2]),
    lty       = 1,
    lwd       = 2,
    col       = "gray75")
abline(
    coef      = c(b0_hat[1], b0_hat[2]),
    lty       = 1,
    lwd       = 2,
    col       = "gray50")
legend("bottomleft", c("Klausurergebnisse", "Regressionsgerade (inkl. 0 Punkte)", "Regressionsgerade (exkl. 0 Punkte)"),
    lty     = c(0, 1, 1),
    lwd     = c(0, 2, 2),
    pch     = c(16, NA, NA),
    col     = c("black", "gray75", "gray50"),
    bty     = "n",
    y.intersp = 1.5)
dev.copy2pdf(
    file    = 'Abbildungen/beispiel_zeit_punkte.pdf',
    width   = 16,
    height  = 9)
```

```{r, echo = F, out.width = "100%"}
knitr::include_graphics("Abbildungen/beispiel_zeit_punkte.pdf")
```


<!-- Anhang: Selbstkontrollfragen -->
#

\setstretch{3}
\vfill
\large

Grundbegriffe der Korrelation

Korrelation und Bestimmtheitsmaß

Anwendung/Praxis

**Selbstkontrollfragen**

\vfill


<!-- Selbstkontrollfragen -->
# Selbstkontrollfragen

\setstretch{1.8}
\footnotesize
1. Geben Sie die Definition der Korrelation zweier Zufallsvariablen wieder.
1. Geben Sie die Definitionen von Stichprobenmittel, -standardabweichung, -kovarianz und -korrelation wieder.
1. Erläutern Sie anhand der Mechanik der Kovariationsterme, wann eine Stichprobenkorrelation einen hohen absoluten Wert annimmt, einen hohen positiven Wert annimmt, einen hohen negativen Wert annimmt und einen niedrigen Wert annimmt.
1. Geben Sie das Theorem zum Zusammenhang von Korrelation und linear-affiner Abhängigkeit wieder.
1. Geben Sie die Definitionen von erklärten Werten und Residuen einer Ausgleichsgerade wieder.
1. Geben Sie das Theorem zur Quadratsummenzerlegung bei einer Ausgleichsgerade wieder.
1. Erläutern Sie die intuitiven Bedeutungen von $\mbox{SQT}, \mbox{SQE}$ und $\mbox{SQR}$.
1. Geben Sie die Definition des Bestimmtheitsmaßes $\mbox{R}^2$ wieder.
1. Geben Sie das Theorem zum Zusammenhang von $\mbox{R}^2$ und residueller Quadratsumme wieder.
1. Geben Sie das Theorem zum Zusammenhang von $\mbox{R}^2$ und Stichprobenkorrelation wieder.
1. Erläutern Sie die Bedeutung von hohen und niedrigen Werten von $\mbox{R}^2$ im Lichte der Ausgleichsgerade.
1. Geben Sie das Theorem zur Stichprobenkorrelation bei linear-affinen Transformationen wieder.
1. Erläutern Sie das Theorem zur Stichprobenkorrelation bei linear-affinen Transformationen am Beispiel.