---
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 2025

\vspace{5mm}
Joram Soch


<!-- Sitzung 9: T-Tests -->
# {.plain}

\vfill
\center
\huge
\textcolor{black}{(9) T-Tests}
\vfill


<!-- Inhaltsverzeichnis -->
#

\large
\setstretch{3}
\vfill

Überblick

Einstichproben-T-Tests

Zweistichproben-T-Tests

Selbstkontrollfragen

\vfill


<!-- Abschnitt 1: Überblick -->
#

\large
\setstretch{3}
\vfill

**Überblick**

Einstichproben-T-Tests

Zweistichproben-T-Tests

Selbstkontrollfragen

\vfill


<!-- Überblick: Kursplan -->
# Überblick

\textcolor{darkblue}{Modul B2: Inferenzstatistik | Allgemeines Lineares Modell}

\small
\center
\footnotesize
\renewcommand{\arraystretch}{1.2}
\begin{tabular}{llll}
Datum        & Einheit                    & Do, 09-13 (ca. 10:00-12:45)         &                        \\ \hline
10.04.2025   & Grundlagen                 & (0) Formalia                        & (1) Regression         \\
17.04.2025   & Grundlagen                 & (2) Korrelation               	    & (3) Matrizen           \\
24.04.2025   & Grundlagen                 & (3) Matrizen                        &                        \\
01.05.2025   & -- Feiertag --             &  -- keine Vorlesung --              &                        \\
08.05.2025   & Grundlagen / Theorie       & (4) Normalverteilungen              & (5) Modellformulierung \\
15.05.2025   & Theorie                    & (6) Parameterschätzung              &                        \\
22.05.2025   & Theorie                    & (7) T-Statistiken                   & (8) F-Statistiken      \\
29.05.2025   & -- Feiertag --             &  -- keine Vorlesung --              &                        \\
05.06.2025   & Anwendung                  & (9) T-Tests                         &                        \\
12.06.2025   & Anwendung                  & (10) Einfaktorielle Varianzanalyse  &                        \\
19.06.2025   & Anwendung                  & (11) Zweifaktorielle Varianzanalyse &                        \\
26.06.2025   & Anwendung                  & (12) Partielle Korrelation          &                        \\
03.07.2025   & Anwendung                  & (13) Multiple Regression            &                        \\
10.07.2025   & Anwendung                  & (14) Kovarianzanalyse               &                        \\ \hline
Juli 2025    & Klausurtermin              &                                     &                        \\
Februar 2026 & Klausurwiederholungstermin &                                     &                        \\
\end{tabular}


<!-- Überblick: Kontinuum von ALM Designs -->
# Überblick

\textcolor{darkblue}{Kontinuum von ALM-Designs}

\small
Extremszenario (1) Die Erwartungswerte aller Datenvariablen sind identisch.
\begin{align}
\begin{split}
y_i &\sim N(\mu,\sigma^2)
\quad \mbox{u.i.v. für} \quad
i = 1,...,n \quad \Leftrightarrow \\
y     &= X\beta + \varepsilon, \quad
X     := 1_n \in \mathbb{R}^{n\times 1}, \quad
\beta := \mu \in \mathbb{R}, \quad
\varepsilon \sim N(0_n,\sigma^2 I_n)
\end{split}
\end{align}

\vspace{-2mm}
$\Rightarrow$ Jegliche Datenvariabilität wird dem Fehlerterm zugeschrieben.

$\Rightarrow$ Es gilt \quad $\hat{\beta} = (1_n^\mathrm{T}1_n)^{-1}1_n^\mathrm{T}y = \bar{y}$ \quad und \quad $\hat{\sigma}^2 = \frac{1}{n-p} (y - 1_n\bar{y})^\mathrm{T}(y - 1_n\bar{y}) = s^2_y$.
\vspace{2mm}

Extremszenario (2) Die Erwartungswerte aller Datenvariablen sind paarweise verschieden.
\begin{align}
\begin{split}
y_i &\sim N(\mu_i,\sigma^2)
\quad \mbox{u.v. für} \quad
i = 1,...,n \quad \Leftrightarrow \\
y     &= X\beta + \varepsilon, \quad
X     := I_n \in \mathbb{R}^{n \times n}, \quad
\beta := (\mu_1,..., \mu_n)^\mathrm{T} \in \mathbb{R}^n, \quad
\varepsilon \sim N(0_n,\sigma^2 I_n)
\end{split}
\end{align}

\vspace{-2mm}
$\Rightarrow$ Jegliche Datenvariabilität wird dem Erwartungswertparameter zugeschrieben.

$\Rightarrow$ Es gilt \quad $\hat{\beta} = (I_n^\mathrm{T}I_n)^{-1}I_n^\mathrm{T}y = y$ \quad und \quad $\hat{\sigma}^2 = \frac{1}{n-p} (y - I_n y)^\mathrm{T}(y - I_n y) = 0$.
\vspace{2mm}

Beide Extremszenarien sind wissenschaftlich nicht ergiebig, da sie keine theoriegeleitete systematische Abhängigkeit zwischen unabhängigen und abhängigen Variablen (UV, AV) annehmen. Die im weiteren Verlauf betrachteten ALM-Designs liegen zwischen den beiden Extremszenarien und repräsentieren verschiedene Formen der systematischen Abhängigkeit zwischen UV und AV.


<!-- Überblick: Faktorielle und parametrische ALM-Designs -->
# Überblick

\textcolor{darkblue}{Faktorielle und parametrische ALM-Designs}

\small
Faktorielle ALM-Designs:
\vspace{-2mm}

* Designmatrizen mit $1$en und $0$en, manchmal $-1$en.
* Betaparameter repräsentieren Erwartungswerte für Gruppen.
* Betaparameterschätzer repräsentieren Stichprobenmittel für Gruppen.
* $\Rightarrow$ T-Tests, einfaktorielle Varianzanalyse, zweifaktorielle Varianzanalyse

Parametrische ALM-Designs:
\vspace{-2mm}

* Designmatrizen besitzen Spalten mit kontinuierlichen reellen Werten.
* Die Designmatrixsspalten werden *Regressoren*, *Prädiktoren*, oder *Kovariaten* genannt.
* Betaparameter repräsentieren Steigungsparameter.
* Betaparameterschätzer ergeben sich als normalisierte Kovarianzen von Regressoren und Daten.
* Es besteht ein enger Bezug zur Theorie der Korrelation.
* $\Rightarrow$ einfache lineare Regression, multiple lineare Regression

Faktoriell-parametrische ALM-Designs:
\vspace{-2mm}

* Designmatrizen mit mehreren faktoriellen und parametrischen Werten.
* Die parametrischen Regressoren werden oft als kontrollierte Kovariaten betrachtet.
* $\Rightarrow$ Kovarianzanalyse, (partielle Korrelation)


<!-- Überblick: ALM-Designs als Hypothesentestverfahren -->
# Überblick

\setstretch{1.5}
\textcolor{darkblue}{ALM-Designs als Hypothesentestverfahren$^\ast$}

Testen von Unterschiedshypothesen:

* T-Tests
* einfaktorielle Varianzanalyse
* zweifaktorielle Varianzanalyse
* Kovarianzanalyse

Testen von Zusammenhangshypothesen:

* einfache lineare Regression/Korrelation
* multiple lineare Regression/partielle Korrelation

$^\ast$ Diese Sichtweise wird durch Prof. Ostwald nicht favorisiert.


<!-- Überblick: T-Tests -->
# Überblick

\setstretch{1.5}
\textcolor{darkblue}{T-Tests}

\small
Es gibt viele T-Test-Varianten, jeweils mit eigenen Testgütefunktionen.

Wir fokussieren hier auf die Darstellung von T-Tests als Spezialfällen des ALMs.

Wir behandeln im Detail:
\vspace{-2mm}

* \justifying Einstichproben-T-Tests mit einfacher Nullhypothese und ungerichteter Alternativhypothese.
* Zweistichproben-T-Tests bei unabhängigen Stichproben unter Annahme identischer Varianzen mit einfacher Nullhypothese und ungerichteter Alternativhypothese.

Wir behandeln nicht:
\vspace{-2mm}

* T-Tests mit gerichteten Hypothesen oder einfachen Null- und Alternativhypothesen.
* Zweistichproben-T-Tests bei Annahme verschiedener Varianzen (Behrends-Fischer-Problem).
* Zweistichproben T-Tests bei abhängigen Stichproben.


<!-- Abschnitt 2: Einstichproben-T-Tests -->
#

\large
\setstretch{3}
\vfill

Überblick

**Einstichproben-T-Tests**

Zweistichproben-T-Tests

Selbstkontrollfragen

\vfill


<!-- Kapitel 2: Einstichproben-T-Tests -->
#

\center
\huge
\vfill
\noindent Einstichproben-T-Tests
\vfill


<!-- Inhaltsverzeichnis: Einstichproben-T-Tests -->
# Einstichproben-T-Tests

\large
\setstretch{2.5}
\vfill

Anwendungsszenario

Modellformulierung

Modellschätzung

Modellevaluation

Anwendung/Praxis

\vfill


<!-- Abschnitt 2.1: Anwendungsszenario -->
# Einstichproben-T-Tests

\large
\setstretch{2.5}
\vfill

**Anwendungsszenario**

Modellformulierung

Modellschätzung

Modellevaluation

Anwendung/Praxis

\vfill


<!-- Anwendungsszenario -->
# Anwendungsszenario {.t}

\vspace{2mm}
\setstretch{2}
\textbf{\textcolor{darkblue}{Eine Gruppe}} (Stichprobe) randomisierter experimenteller Einheiten.

Annahme der unabhängigen und identischen Normalverteilung $N(\mu,\sigma^2)$.

$\mu$ und $\sigma^2$ unbekannt.

Quantifizieren der Unsicherheit beim inferentiellen Vergleich von $\mu$ mit $\mu_0$ beabsichtigt.


<!-- Anwendungsszenario -->
# Anwendungsszenario {.t}

\vspace{2mm}
\setstretch{1.8}
\textcolor{darkblue}{Anwendungsbeispiele}

\small
Pre-Post-Psychotherapie: BDI-Differenzanalyse einer Gruppe von Patient:innen

\vspace{-2mm}
* $\mu \neq \mu_0 := 0 \quad \Rightarrow$ Evidenz für Depressionsymptomatikveränderung

Gruppenanalysen mit *Wechsler Adult Intelligence Scale* (WAIS)

\vspace{-2mm}
* $\mu \neq \mu_0 := 100 \,  \Rightarrow$ Evidenz für über- oder unterdurchschnittliche WAIS-Performanz

Gruppenanalysen in der funktionellen Kernspintomographie (fMRT)

\vspace{-2mm}
* $\mu > \mu_0 := 0    \quad \Rightarrow$ Evidenz für regionale Gehirnaktivierung


<!-- Anwendungsszenario -->
# Anwendungsszenario {.t}

\vspace{2mm}
\textcolor{darkblue}{Anwendungsbeispiel}

```{r, echo = F, out.width = "90%"}
knitr::include_graphics("Abbildungen/beispielstudie_einstichproben-t-test.pdf")
```

\small
Wir nehmen an, dass die Datenpunkte unabhängige und identisch verteilte (u.i.v.) Realisierungen von ZVen $y_i \sim N(\mu,\sigma^2)$ sind und nehmen weiter an, dass wir sind an der Quantifizierung der Unsicherheit beim inferentiellen Vergleich des wahren, aber unbekannten Erwartungswertparameters $\mu$ im Sinne eines Hypothesentests interessiert sind.

```{r, eval = F, echo = F}
# Initialisierung
set.seed(1)                                                                      # Zufallszahlengenerator initialisieren

# Simulationsparameter
n_c    = 2                                                                       # Anzahl Gruppen
n_i    = 40                                                                      # Anzahl Proband:innen pro Gruppe
n      = n_c*n_i                                                                 # Gesamtanzahl Datenpunte
mu_pre = c(31, 32)                                                               # \mu pre F2F, ONL
mu_pos = c(27, 26)                                                               # \mu post F2F, ONL
sigsqr = 10                                                                      # \sigma^2

# Datensimulation
D            = data.frame("ID" = 1:n)                                            # Dataframe-Initialisierung und ID-Variable
D$Setting    = c(rep("F2F",n_i), rep("ONL", n_i))                                # Bedingung
D$PreBDI     = c(round(rnorm(n_i, mu_pre[1], sqrt(sigsqr))),                     # PreBDI
                 round(rnorm(n_i, mu_pre[2], sqrt(sigsqr))))
D$PostBDI    = c(round(rnorm(n_i, mu_pos[1], sqrt(sigsqr))),                     # PostBDI
                 round(rnorm(n_i, mu_pos[2], sqrt(sigsqr))))
D$dBDI       = -(D$PostBDI - D$PreBDI)                                           # -(PostBDI - PreBDI) = PreBDI - PostBDI

# Datenspeicherung
write.csv(D,
    file = "Daten/T-Tests_Daten.csv")
```


<!-- Abschnitt 2.2: Modellformulierung -->
# Einstichproben-T-Tests

\large
\setstretch{2.5}
\vfill

Anwendungsszenario

**Modellformulierung**

Modellschätzung

Modellevaluation

Anwendung/Praxis

\vfill


<!-- Modellformulierung -->
# Modellformulierung

\footnotesize
\begin{definition}[Einstichproben-T-Test-Modell]

\justifying
$y_i, i = 1,...,n$ seien Zufallsvariablen, die die $n$ Datenpunkte eines Anwendungsszenarios für den Einstichproben-T-Test modellieren. Dann hat das \textit{Einstichproben-T-Test-Modell} die strukturelle Form
\begin{equation}
y_i = \mu + \varepsilon_i
\quad \mbox{mit} \quad
\varepsilon_i \sim N(0,\sigma^2)
\quad \mbox{u.i.v. für} \quad
i = 1,...,n
\quad \mbox{mit} \quad
\mu \in \mathbb{R}
\quad \mbox{und} \quad
\sigma^2 > 0,
\end{equation}

die Datenverteilungsform
\begin{equation}
y_i \sim  N(\mu,\sigma^2)
\quad \mbox{u.i.v. für} \quad
i = 1,...,n
\quad \mbox{mit} \quad
\mu \in \mathbb{R}
\quad \mbox{und} \quad
\sigma^2 > 0,
\end{equation}

und für den Datenvektor $y = (y_1,...,y_n)^\mathrm{T}$ die Designmatrixform
\begin{equation}
y = X\beta + \varepsilon
\quad \mbox{mit} \quad
X := 1_n \in \mathbb{R}^{n \times 1}, \quad
\beta := \mu \in \mathbb{R}, \quad
\varepsilon \sim N(0_n,\sigma^2I_n),
\quad \mbox{und} \quad
\sigma^2 > 0.
\end{equation}

\end{definition}

Bemerkungen

* Das Modell ist identisch mit dem Modell unabhängiger und identisch normalverteilter Zufallsvariablen.
* Die Äquivalenz der drei Modellformen wurde bereits diskutiert (vgl. Einheit (5) in *Allgemeines Lineares Modell*).
* Die Anzahl der Betaparameter ist $p = 1$.


<!-- Designmatrix des Modells -->
# Modellformulierung

Designmatrix des Einstichproben-T-Test-Modells ($n = 20$, $p = 1$)

```{r, echo = F, eval = F}
# Designmatrixerzeugung
n      = 20                                  # Anzahl von Datenpunkten
X      = matrix(rep(1,n), nrow = n)          # n x p Designmatrix
Xp     = X

# Abbildungsparameter
library(plot.matrix)
graphics.off()
dev.new()
par(
    family    = "sans",
    mar       = c(1,1,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  = 2)

# Designmatrix
plot(Xp,
    col       = gray(seq(0, 1, length.out = 256)),
    border    = "black",
    xlab      = '',
    ylab      = '',
    main      = '',
    breaks    = seq(-1, 1, length.out = 257),
    key       = NULL,
    axis.col  = NULL,
    axis.row  = NULL,
    asp       = 1)

# Speichern
dev.copy2pdf(
    file      = "Abbildungen/designmatrix_einstichproben-t-test.pdf",
    width     = 10,
    height    = 10)
```

\vspace{2mm}
```{r, echo = F, out.width = "60%"}
knitr::include_graphics("Abbildungen/designmatrix_einstichproben-t-test.pdf")
```


<!-- Datensimulation -->
# Modellformulierung

\normalsize
Datensimulation (vgl. Einheit (5) in *Allgemeines Lineares Modell*)

\vspace{4mm}

\footnotesize
\setstretch{1.2}
```{r, echo = T}
# Modellformulierung
library(MASS)                                # multivariate Normalverteilung
n      = 20                                  # Anzahl von Datenpunkten
p      = 1                                   # Anzahl von Betaparametern
X      = matrix(rep(1,n), nrow = n)          # n x p Designmatrix
I_n    = diag(n)                             # n x n Einheitsmatrix
beta   = 5                                   # wahrer, aber unbekannter Betaparameter
sigsqr = 14                                  # wahrer, aber unbekannter Varianzparameter

# Datenrealisierung
y      = mvrnorm(1, X %*% beta, sigsqr*I_n)  # eine Realisierung des n-dimensionalen ZVs y
print(y)
```
\vfill


<!-- Abschnitt 2.3: Modellschätzung -->
# Einstichproben-T-Tests

\large
\setstretch{2.5}
\vfill

Anwendungsszenario

Modellformulierung

**Modellschätzung**

Modellevaluation

Anwendung/Praxis

\vfill


<!-- Theorem: Parameterschätzung im Einstichproben-T-Test-Modell -->
# Modellschätzung

\footnotesize
\begin{theorem}[Parameterschätzung im Einstichproben-T-Test-Modell]

\normalfont
\justifying
Gegeben sei die Designmatrixform des Einstichproben-T-Test-Modells. Dann ergeben sich für den Betaparameterschätzer
\begin{equation}
\hat{\beta} = \frac{1}{n}\sum_{i=1}^n y_i =: \bar{y}
\end{equation}

und für den Varianzparameterschätzer
\begin{equation}
\hat{\sigma}^2 = \frac{1}{n-1}\sum_{i=1}^n (y_i - \bar{y})^2 =: s_y^2 \; .
\end{equation}

\end{theorem}

Bemerkungen

* Die Formen von $\hat{\beta}$ und $\hat{\sigma}^2$ wurden bereits hergeleitet (siehe Einheit (6) in *Allgemeines Lineares Modell*).
* $\bar{y}$ und $s_y^2$ bezeichnen das Stichprobenmittel und die Stichprobenvarianz der $y_1,...,y_n$.


<!-- Modellschätzung -->
# Modellschätzung

\tiny
\setstretch{1.2}
```{r, echo = T}
# Daten einlesen
fname       = "Daten/T-Tests_Daten.csv"                             # Dateiname
D           = read.table(fname, sep = ",", header = TRUE)           # Dataframe
y           = D$dBDI[D$Setting == "F2F"]                            # BDI-Differenzwerte in der F2F-Gruppe

# Modellformulierung
n          = length(y)                                              # Anzahl Datenpunkte
p          = 1                                                      # Anzahl Betaparameter
X          = matrix(rep(1,n), nrow = n)                             # Designmatrix

# Modellschätzung
beta_hat   = solve(t(X) %*% X) %*% t(X) %*% y                       # Betaparameterschätzer
eps_hat    = y - X %*% beta_hat                                     # Residuenvektor
sigsqr_hat = (t(eps_hat) %*% eps_hat) /(n-p)                        # Varianzparameterschätzer

# Ausgabe
cat(  "hat{beta}   : ", beta_hat,                                   # Betaparameterschätzer
    "\nbar{y}      : ", mean(y),                                    # Stichprobenmittel
    "\nhat{sigsqr} : ", sigsqr_hat,                                 # Varianzparameterschätzer
    "\ns_y^2       : ", var(y))                                     # Stichprobenvarianz
```


<!-- Abschnitt 2.4: Modellevaluation -->
# Einstichproben-T-Tests

\large
\setstretch{2.5}
\vfill

Anwendungsszenario

Modellformulierung

Modellschätzung

**Modellevaluation**

Anwendung/Praxis

\vfill


<!-- Hypothesenszenarien -->
# Modellevaluation

\small
\textcolor{darkblue}{Hypothesenszenarien}

\setstretch{1.2}
Einfache Nullhypothese, einfache Alternativhypothese $H_0: \mu = \mu_0$, $H_1: \mu = \mu_1$
\begin{itemize}
\item theoretisch wichtiges Szenario (Neymann-Pearson-Lemma)
\item praktische Relevanz eher gering
\end{itemize}

Einfache Nullhypothese, zusammengesetzte Alternativhypothese $H_0: \mu = \mu_0$, $H_1: \mu \neq \mu_0$
\begin{itemize}
\item zweiseitiger Einstichproben-T-Test mit ungerichteter Hypothese
\item ungerichtete Fragestellung nach einem Unterschied
\end{itemize}

Zusammengesetzte Nullhypothese/Alternativhypothese $H_0: \mu \le \mu_0$, $H_1: \mu > \mu_0$
\begin{itemize}
\item einseitiger Einstichproben-T-Test mit gerichteter Hypothese
\item gerichtete Fragestellung nach einem positiven Unterschied
\end{itemize}

Zusammengesetzte Nullhypothese/Alternativhypothese $H_0: \mu \ge \mu_0$, $H_1: \mu < \mu_0$
\begin{itemize}
\item gerichtete Fragestellung nach einem negativen Unterschied
\item qualitativ äquivalente Theorie zum umgekehrten Fall
\end{itemize}


<!-- Hypothesenszenarien -->
# Modellevaluation

\small
\textcolor{darkblue}{Hypothesenszenarien}

\setstretch{1.2}
\textcolor{lightgray}{Einfache Nullhypothese, einfache Alternativhypothese $H_0: \mu = \mu_0$, $H_1: \mu = \mu_1$}
\begin{itemize}
\item[\textcolor{lightgray}{$\bullet$}] \textcolor{lightgray}{theoretisch wichtiges Szenario (Neymann-Pearson Lemma)}
\item[\textcolor{lightgray}{$\bullet$}] \textcolor{lightgray}{praktische Relevanz eher gering}
\end{itemize}

Einfache Nullhypothese, zusammengesetzte Alternativhypothese $H_0: \mu = \mu_0$, $H_1: \mu \neq \mu_0$
\begin{itemize}
\item zweiseitiger Einstichproben-T-Test mit ungerichteter Hypothese
\item ungerichtete Fragestellung nach einem Unterschied
\end{itemize}

\textcolor{lightgray}{Zusammengesetzte Nullhypothese/Alternativhypothese $H_0: \mu \le \mu_0$, $H_1: \mu > \mu_0$}
\begin{itemize}
\item[\textcolor{lightgray}{$\bullet$}] \textcolor{lightgray}{einseitiger Einstichproben-T-Test mit gerichteter Hypothese}
\item[\textcolor{lightgray}{$\bullet$}] \textcolor{lightgray}{gerichtete Fragestellung nach einem positiven Unterschied}
\end{itemize}

\textcolor{lightgray}{Zusammengesetzte Nullhypothese/Alternativhypothese $H_0: \mu \ge \mu_0$,$H_1: \mu < \mu_0$}
\begin{itemize}
\item[\textcolor{lightgray}{$\bullet$}] \textcolor{lightgray}{gerichtete Fragestellung nach einem negativen Unterschied}
\item[\textcolor{lightgray}{$\bullet$}] \textcolor{lightgray}{qualitativ äquivalente Theorie zum umgekehrten Fall}
\end{itemize}


<!-- Modellevaluation -->
# Modellevaluation

\small
\setstretch{2}
\textcolor{darkblue}{Gliederung} (vgl. Einheit (11), Folie 28 in \textit{Wahrscheinlichkeitstheorie und Frequentistische Inferenz})

(1) Statistisches Modell $\checkmark$

(2) Testhypothesen $\checkmark$

(3) Teststatistik

(4) Test

(5) Analyse der Testgütefunktion

(6) Testumfangkontrolle

(7) p-Wert

(8) Analyse der Powerfunktion


<!-- Modellevaluation: Teststatistik -->
# Modellevaluation (3) Teststatistik

\setstretch{3}
\textcolor{darkblue}{Bezeichungskonventionen für $t$-Zufallsvariablen}

\small
* Für eine (nichtzentrale) $t$-Zufallsvariable $\xi$ schreiben wir $\xi \sim t(n)$ (oder $\xi \sim t(\delta, n)$).
* Die WDF einer (nichtzentralen) $t$-Zufallsvariable ist $t(\cdot;n)$ (oder $t(\cdot;\delta,n)$).
* Die KVF einer (nichtzentralen) $t$-Zufallsvariable ist $\psi(\cdot;n)$ (oder $\psi(\cdot;\delta,n)$).
* Die Teststatistik eines T-Test-Designs/Hypothesentests bezeichnen wir mit $T$.
* Die Realisierung der T-Teststatistik für einen Datensatz bezeichnen wir mit $t$.
\vfill


<!-- Theorem: T-Teststatistik des Einstichproben-T-Tests -->
# Modellevaluation (3) Teststatistik

\footnotesize
\begin{theorem}[T-Teststatistik des Einstichproben-T-Tests]

\normalfont
\justifying
Gegeben sei die Designmatrixform des Einstichproben-T-Test-Modells. Dann ergibt sich für die T-Teststatistik mit
\begin{equation}
c := 1
\quad \mbox{und} \quad
\beta_0 =: \mu_0,
\end{equation}

dass
\begin{equation}
T = \sqrt{n}\left(\frac{\bar{y} - \mu_0}{s_y}\right)
\end{equation}

und es gilt
\begin{equation}
T \sim t(\delta, n-1)
\quad \mbox{mit} \quad
\delta = \sqrt{n}\left(\frac{\mu - \mu_0}{\sigma}\right).
\end{equation}

\end{theorem}

Bemerkungen

* Das Theorem basiert auf der T-Statistik im Rahmen des ALM.
* Wir erinnern an das verwandte populäre und von der Stichprobengröße unabhängige Effekstärke-Maß *Cohen's* $d$ bei Einstichproben-T-Test-Designs,
\begin{equation}
d := \frac{\bar{y}}{s_y}.
\end{equation}
* Offenbar gilt für *Cohen's* $d$, dass mit $\mu_0 := 0$
\begin{equation}
T = \sqrt{n}d
\quad \Leftrightarrow \quad
d = T/\sqrt{n}.
\end{equation}


<!-- Beweis -->
# Modellevaluation (3) Teststatistik

\footnotesize
\underline{Beweis}

Mit dem Theorem zur Verteilung der T-Statistik (siehe Einheit (7) in *Allgemeines Lineares Modell*) gilt
\begin{equation}
T
= \frac{c^\mathrm{T} \hat{\beta} - c^\mathrm{T} \beta_0}{\sqrt{\hat{\sigma}^2 c^\mathrm{T} (X^\mathrm{T}X)^{-1}c}}
= \frac{1^\mathrm{T} \bar{y} - 1^\mathrm{T} \mu_0}{\sqrt{s_y^2 1^\mathrm{T} (1_n^\mathrm{T}1_n)^{-1}1}}
= \sqrt{n}\left(\frac{\bar{y} - \mu_0}{s_y}\right).
\end{equation}
\vspace{2mm}

Weiterhin gilt mit demselben Theorem
\begin{equation}
\delta
= \frac{c^\mathrm{T} \beta - c^\mathrm{T} \beta_0}{\sqrt{\sigma^2 c^\mathrm{T} (X^\mathrm{T}X)^{-1}c}}
= \frac{1^\mathrm{T} \mu   - 1^\mathrm{T} \mu_0  }{\sqrt{\sigma^2 1^\mathrm{T} (1_n^\mathrm{T} 1_n)^{-1}1}}
= \sqrt{n}\left(\frac{\mu - \mu_0}{\sigma}\right).
\end{equation}
$\hfill\Box$


<!-- Definition: Zweiseitiger Einstichproben-T-Tests -->
# Modellevaluation (4) Test
<!-- \Leftrightarrow \Theta_0 := \{\mu_0\} -->
<!-- \Leftrightarrow \Theta_1 := \mathbb{R} \setminus \{\mu_0\} -->

\footnotesize
\begin{definition}[Zweiseitiger Einstichproben-T-Tests]

\justifying
Gegeben sei das Einstichproben-T-Test-Modell. Für ein $\mu_0 \in \mathbb{R}$ seien die einfache Nullhypothese und die zusammengesetzte Alternativhypothese als
\begin{equation}
H_0 : \mu = \mu_0
\quad \mbox{und} \quad
H_1 : \mu \neq \mu_0
\end{equation}

definiert. Weiterhin sei die T-Teststatistik definiert als
\begin{equation}
T := \sqrt{n}\left(\frac{\bar{y} - \mu_0}{s_y}\right)
\end{equation}

Dann ist der \textit{zweiseitige Einstichproben-T-Tests} definiert als der kritische-Wert-basierte Test
\begin{equation}
\phi(y) := 1_{\{|T| \ge k\}} =
{\begin{cases}
1 & |T| \ge k \\
0 & |T|  <  k
\end{cases}}.
\end{equation}

\end{definition}

Bemerkungen

* Ausführlicher handelt es sich um den *zweiseitigen Einstichproben-T-Test mit ungerichteter Hypothese*.


<!-- Theorem: Testgütefunktion -->
# Modellevaluation (5) Analyse der Testgütefunktion

\small
\begin{theorem}[Testgütefunktion]

\justifying
\normalfont
$\phi$ sei der im obigen Testszenario definierte Test. Dann ist die Testgütefunktion von $\phi$ gegeben durch
\begin{equation}
q_{\phi} : \mathbb{R} \to [0,1],
\mu \mapsto q_{\phi}(\mu)
:= 1 - \psi(k;\delta,n-1) + \psi(-k;\delta,n-1)
\end{equation}

wobei $\psi(\cdot; \delta, n-1)$ die KVF der nichtzentralen $t$-Verteilung mit Nichtzentralitätsparameter
\begin{equation}
\delta := \sqrt{n}\left(\frac{\mu - \mu_0}{\sigma}\right)
\end{equation}

und Freiheitsgradparameter $n-1$ bezeichnet.

\end{theorem}


<!-- Analyse der Testgütefunktion -->
# Modellevaluation (5) Analyse der Testgütefunktion

\small
\center
Testgütefunktion $q_\phi$ für $\sigma^2 = 9, \mu_0 = 4, n = 12$ und $k = 1,2,3$.
\vspace{2mm}
\begin{equation*}
\quad q_{\phi}(\mu) = \mathbb{P}_\mu(\phi = 1)
\end{equation*}

```{r, echo = F, eval = F}
dev.new()
graphics.off()
par(
    family      = "sans",
    bty         = "l",
    lwd         = 1,
    las         = 1,
    mgp         = c(2,1,0),
    xaxs        = "i",
    yaxs        = "i",
    font.main   = 1,
    cex         = 1.1,
    cex.main    = 1.1)

# Parameter
mu_0        = 4
n           = 12
sigsqr      = 9
sigma       = sqrt(9)
k           = c(1,2,3)
mu          = matrix(seq(0, 8,len = 1e3), nrow = 1e3)
d           = sqrt(n)*(mu - mu_0)/sigma
q_mu        = cbind(matrix(1-pt(k[1],n-1,d)+ pt(-k[1],n-1,d),nrow=length(mu)),
                    matrix(1-pt(k[2],n-1,d)+ pt(-k[2],n-1,d),nrow=length(mu)),
                    matrix(1-pt(k[3],n-1,d)+ pt(-k[3],n-1,d),nrow=length(mu)))

# Visualisierung
matplot(mu, q_mu,
    type        = "l",
    lty         = c(1,2,3),
    col         = "black",
    lwd         = 2,
    xlab        = "",
    ylab        = "",
    ylim        = c(0,1.05))
lines(4, 0,
    pty         = "p",
    pch         = 16,
    xpd         = TRUE)
legend(6, 0.4, c("k = 1", "k = 2", "k = 3"),
    lty         = c(1,2,3),
    col         = "black",
    bty         = "n")
    y.intersp   = 3)
text(8.3, -0.01, TeX("$\\mu$")                        , cex = 1.1, xpd = TRUE)
text(4  , -0.25, TeX("$H_0\\,:\\, \\mu = \\mu_0$")    , cex = 1.1, xpd = TRUE)
text(2  , -0.35, TeX("$H_1\\,:\\, \\mu \\neq \\mu_0$"), cex = 1.1, xpd = TRUE)
text(6  , -0.35, TeX("$H_1\\,:\\, \\mu \\neq \\mu_0$"), cex = 1.1, xpd = TRUE)
dev.copy2pdf(
    file        = "Abbildungen/t_test_ungerichtet_guetefunktion.pdf",
    width       = 7,
    height      = 4)
```

```{r, echo = F, out.width = "80%"}
knitr::include_graphics("Abbildungen/t_test_ungerichtet_guetefunktion.pdf")
```


<!-- Beweis -->
# Modellevaluation (5) Analyse der Testgütefunktion

\small
\underline{Beweis}

Die Testgütefunktion des betrachteten Test im vorliegenden Testszenario ist definiert als
\begin{equation}
q_{\phi} : \mathbb{R} \to [0,1],
\mu \mapsto q_{\phi}(\mu) := \mathbb{P}_{\mu}(\phi = 1).
\end{equation}

Da die Wahrscheinlichkeiten für $\phi = 1$ und dafür, dass die zugehörige Teststatistik im Ablehnungsbereich des Tests liegt, gleich sind, benötigen wir also zunächst die Verteilung der Teststatistik. Wir haben oben bereits gesehen, dass die T-Teststatistik
\begin{equation}
T := \sqrt{n}\left(\frac{\bar{y} - \mu_0}{s_y} \right)
\end{equation}

unter der Annahme $y_i \sim N(\mu,\sigma^2) \mbox{ u.i.v. für } i = 1,...,n$ nach einer nichtzentralen $t$-Verteilung $t(\delta,n-1)$ mit Nichtzentralitätsparameter
\begin{equation}
\delta = \sqrt{n}\left(\frac{\mu - \mu_0}{\sigma}\right)
\end{equation}

verteilt ist. Der Ablehnungsbereich des zweiseitigen T-Tests ergibt sich, wie in ähnlicher Form bei der Betrachtung des zweiseitigen Z-Tests gesehen, zu
\begin{equation}
A = \,]-\infty, -k]\, \cup \,]k,\infty[.
\end{equation}
\vfill


<!-- Beweis -->
# Modellevaluation (5) Analyse der Testgütefunktion

\small
\underline{Beweis (fortgeführt)}

Mit diesem Ablehungsbereich ergibt sich dann
\begin{align}
\begin{split}
q_\phi(\mu)
& = \mathbb{P}_{\mu}(\phi = 1)                                  \\
& = \mathbb{P}_{\mu}\left(T \in ]-\infty, -k]\,
                         \cup \,]k,\infty[ \right)              \\
& = \mathbb{P}_{\mu}\left(T \in ]-\infty, -k]\right)
  + \mathbb{P}_{\mu}\left(T \in [k,\infty[ \right)              \\
& = \mathbb{P}_{\mu}(T \le -k) + \mathbb{P}_{\mu}(T \ge k)      \\
& = \mathbb{P}_{\mu}(T \le -k) + (1-\mathbb{P}_{\mu}(T \le k))  \\
& = 1 - \mathbb{P}_{\mu}(T \le k) + \mathbb{P}_{\mu}(T \le - k) \\
& = 1 - \psi(k; \delta, n-1)  + \psi(-k;\delta,n-1),
\end{split}
\end{align}

wobei $\psi(\cdot; \delta,n-1)$ die KVF der nichtzentralen T-Verteilung mit
Nichtzentralitätsparameter $\delta$ und Freiheitsgradparameter $n-1$ bezeichnet.
$\hfill\Box$
\vfill


<!-- Theorem: Testumfangkontrolle -->
# Modellevaluation (6) Testumfangkontrolle

\vfill
\small
\begin{theorem}[Testumfangkontrolle]

\justifying
\normalfont
$\phi$ sei der im obigen Testszenario definierte Test. Dann ist $\phi$ ein Level-$\alpha_0$-Test mit Testumfang $\alpha_0$, wenn der kritische Wert definiert ist durch
\begin{equation}
k_{\alpha_0} := \psi^{-1}\left(1 - \frac{\alpha_0}{2}; n-1 \right),
\end{equation}

wobei $\psi^{-1}(\cdot; n-1)$ die inverse KVF der $t$-Verteilung mit $n-1$ Freiheitsgraden ist.

\end{theorem}

\vfill


<!-- Visualisierung -->
# Modellevaluation (6) Testumfangkontrolle

\small
\center
Wahl von $k_{\alpha_0} := \psi^{-1}(1 - \alpha_0/2; n-1)$ mit $n =12$, $\alpha_0 := 0.05$ und Ablehnungsbereich
\vspace{2mm}

```{r, echo = F, eval = F}
dev.new()
graphics.off()
par(
    family      = "sans",
    mfcol       = c(1,2),
    pty         = "m",
    bty         = "l",
    lwd         = 1,
    las         = 1,
    mgp         = c(2,1,0),
    xaxs        = "i",
    yaxs        = "i",
    font.main   = 1,
    cex         = 1,
    cex.main    = 1.2)

# Parameter
n           = 12
alpha_0     = 0.05                                                               # Konfidenzniveau
k_alpha_0   = qt(1 - alpha_0/2, n-1)                                             # kritischer Wert
t           = seq(-4, 4, length=1e4)                                             # T-Statistikwerte
Pt          = pt(t,n-1)                                                          # T-Statistik KVF für H_0
pt          = dt(t,n-1)                                                          # T-Statistik WDF für H_0

# KVF-Perspektive
plot(t, Pt,
    type        = "l",
    ylab        = " ",
    ylim        = c(0,1),
    main        = TeX("$\\psi$"))
lines(k_alpha_0, 0,
    type        = "p",
    pch         = 16,
    xpd         = TRUE)
lines(min(t), 1 - alpha_0/2,
    type        = "p",
    pch         = 16,
    xpd         = TRUE)
arrows(
    x0          = min(t),
    y0          = 1 - alpha_0/2,
    x1          = k_alpha_0,
    y1          = 1 - alpha_0/2,
    col         = "darkorange",
    angle       = 45,
    length      = .1)
arrows(
    x0          = k_alpha_0,
    y0          = 1-alpha_0/2,
    x1          = k_alpha_0,
    y1          = 0,
    col         = "darkorange",
    angle       = 45,
    length      = .1)
text(k_alpha_0, -0.25, TeX("$\\k_{\\alpha_0}$"), xpd = TRUE)
text(       -3,  1.05, TeX("$1 - \\alpha_0/2$"), xpd = TRUE)

# WDF-Perspektive
plot(t, pt,
    type        = "l",
    ylab        = " ",
    ylim        = c(0,.4),
    main        = TeX("$t$"))
polygon(c(t[t  <= -k_alpha_0], 0, 0),
        c(pt[t <= -k_alpha_0], min(t), -k_alpha_0),
    col         = "gray90",
    border      = NA)
polygon(c(t[t  >= k_alpha_0], max(t), k_alpha_0),
        c(pt[t >= k_alpha_0], 0, 0),
    col         = "gray90",
    border      = NA)
lines(seq(min(t), -k_alpha_0, len = 1e2), rep(0,1e2),
    type        = "l",
    lwd         = 5,
    col         = "darkorange")
lines(seq(k_alpha_0, max(t), len = 1e2), rep(0,1e2),
    type        = "l",
    lwd         = 5,
    col         = "darkorange")
lines(-k_alpha_0, 0,
    type        = "p",
    pch         = 16,
    xpd         = TRUE)
lines(k_alpha_0, 0,
    type        = "p",
    pch         = 16,
    xpd         = TRUE)
text(-k_alpha_0, -0.11, TeX("$-\\k_{\\alpha_0}$"), xpd = TRUE)
text( k_alpha_0, -0.11, TeX("$\\k_{\\alpha_0}$") , xpd = TRUE)
text( 3, 0.05 , TeX("$P(T > = k_{\\alpha_0}) = \\alpha_0/2$"), xpd = TRUE, cex = .8, col = "gray50")
text(-3, 0.05 , TeX("$P(T < = k_{\\alpha_0}) = \\alpha_0/2$"), xpd = TRUE, cex = .8, col = "gray50")

dev.copy2pdf(
    file        = "Abbildungen/t_test_ungerichtet_testumfangkontrolle.pdf",
    width       = 8,
    height      = 4)
```

```{r, echo = F, out.width = "90%"}
knitr::include_graphics("Abbildungen/t_test_ungerichtet_testumfangkontrolle.pdf")
```


<!-- Beweis -->
# Modellevaluation (6) Testumfangkontrolle

\footnotesize
\setstretch{1.1}
\underline{Beweis}

Damit der betrachtete Test ein Level-$\alpha_0$-Test ist, muss bekanntlich $q_\phi(\mu) \le \alpha_0$ für alle $\mu \in \{\mu_0\}$, also hier $q_\phi(\mu_0) \le \alpha_0$, gelten. Weiterhin ist der Testumfang des betrachteten Tests durch $\alpha = \max_{\mu \in \{\mu_0\}} q_\phi(\mu)$, also hier durch $\alpha = q_\phi(\mu_0)$ gegeben. Wir  müssen also zeigen, dass die Wahl von $k_{\alpha_0}$ garantiert, dass $\phi$ ein Level-$\alpha_0$-Test mit Testumfang $\alpha_0$ ist. Dazu merken wir zunächst an, dass für $\mu = \mu_0$ gilt, dass
\begin{align}
\begin{split}
q_\phi(\mu_0)
& =  1 - \psi(k;\delta,n-1) + \psi(-k;\delta,n-1) \\
& =  1 - \psi(k;0,n-1) + \psi(-k;0,n-1)           \\
& =  1 - \psi(k;n-1) + \psi(-k;n-1),
\end{split}
\end{align}

wobei $\psi(\cdot;\delta,n-1)$ und $\psi(\cdot;n-1)$ die KVF der nichtzentralen $t$-Verteilung mit Nichtzentralitätsparameter $\delta$ und Freiheitsgradparameter $n-1$ bzw. der $t$-Verteilung mit Freiheitsgradparameter $n-1$ bezeichnen. Mit $k := k_{\alpha_0}$ gilt dann
\begin{align}
\begin{split}
q_\phi(\mu_0)
& = 1 - \psi(k_{\alpha_0}; n-1) + \psi(-k_{\alpha_0}; n-1)                          \\
& = 1 - \psi(k_{\alpha_0}; n-1) + (1 - \psi(k_{\alpha_0}; n-1))                     \\
& = 2(1-\psi(k_{\alpha_0}; n-1))                                                    \\
& = 2\left(1-\psi\left(\psi^{-1}\left(1 - \alpha_0/2; n-1\right); n-1\right)\right) \\
& = 2\left(1 - (1 - \alpha_0/2)\right)                                              \\
& = \alpha_0,
\end{split}
\end{align}

wobei die zweite Gleichung mit der Symmetrie der $t$-Verteilung folgt. Es folgt also direkt, dass bei der Wahl von $k = k_{\alpha_0}$, $q_\phi(\mu_0)\le \alpha_0$ ist und der betrachtete Test somit ein Level-$\alpha_0$-Test ist. Weiterhin folgt direkt, dass der Testumfang des betrachteten Tests bei der Wahl von $k = k_{\alpha_0}$ gleich $\alpha_0$ ist.
$\hfill\Box$


<!-- Praktisches Vorgehen -->
# Modellevaluation (6) Testumfangkontrolle

Praktisches Vorgehen
\small

* \justifying Man nimmt an, dass ein Datensatz $y_1,...,y_n$ eine Realisation von $y_i \sim N(\mu,\sigma^2) \mbox{ u.i.v. für } i = 1,...,n$ mit unbekannten Parametern $\mu$ und $\sigma^2 > 0$ ist.

* Man möchte entscheiden ob für ein $\mu_0 \in \mathbb{R}$ eher $H_0 : \mu = \mu_0$ oder $H_1: \mu \neq \mu_0$ zutrifft.

* Man wählt ein Signifikanzniveau $\alpha_0$ und bestimmt den zugehörigen Freiheitsgradparameter-abhängigen kritischen Wert $k_{\alpha_0}$. Zum Beispiel gilt bei Wahl von $\alpha_0  := 0.05$ und $n=12$, dass $k_{0.05}=\psi^{-1}(1 - 0.05/2; 12 - 1) \approx 2.20$ ist.

* Anhand von $n, \mu_0, \bar{y}$ und $s_y$ berechnet man die Realisierung der T-Teststatistik
\begin{equation}
t:= \sqrt{n}\left(\frac{\bar{y} - \mu_0}{s_y}\right)
\end{equation}

* Wenn $t$ größer-gleich $k_{\alpha_0}$ ist oder wenn $t$ kleiner-gleich $-k_{\alpha_0}$ ist, lehnt man die Nullhypothese ab, andernfalls lehnt man sie nicht ab.

* Die oben entwickelte Theorie  garantiert dann, dass man in höchstens $\alpha_0 \cdot 100$ von $100$ Fällen die Nullhypothese fälschlicherweise ablehnt.


<!-- Bestimmung des p-Wertes -->
# Modellevaluation (7) p-Wert

Bestimmung des p-Wertes
\small

* \justifying Per Definition ist der p-Wert das kleinste Signifikanzlevel $\alpha_0$, bei welchem man die Nullhypothese basierend auf einem vorliegendem Wert der Teststatistik ablehnen würde.

* Bei $T = t$ würde $H_0$ für jedes $\alpha_0$ mit $|t| \ge \psi^{-1}(1-\alpha_0/2; n-1)$ abgelehnt werden. Für diese $\alpha_0$ gilt, wie unten gezeigt,
\begin{equation}
\alpha_0 \ge 2 \mathbb{P}(T \ge |t|).
\end{equation}

* Das kleinste $\alpha_0 \in [0,1]$ mit $\alpha_0 \ge 2 \mathbb{P}(T \ge |t|)$ ist dann $\alpha_0 = 2 \mathbb{P}(T \ge |t|)$, also folgt
\begin{equation}
\mbox{p-Wert} =  2 \mathbb{P}(T \ge |t|) = 2(1 - \psi(|t|;n-1)).
\end{equation}

* Im Gegensatz zum Z-Test hängt bei T-Tests der p-Wert auch von der Stichprobengröße ab.

* Zum Beispiel ist für $t = 2.00$ und $n = 10$ der p-Wert $0.076$, für $t = 2.00$ und $n = 100$ ist der p-Wert dagegen $0.048$.


<!-- Bestimmung des p-Wertes -->
# Modellevaluation (7) p-Wert

Bestimmung des p-Wertes
\small

* \justifying Es bleibt zu zeigen, dass gilt
\begin{equation}
|t| \ge \psi^{-1}(1 - \alpha_0/2; n-1)
\quad \Leftrightarrow \quad
\alpha_0 \ge 2 \mathbb{P}(T \ge |t|) \; .
\end{equation}

* Dies aber folgt aus
\footnotesize
\vspace{-2mm}
\begin{align}
\begin{split}
|t|
& \ge \psi^{-1}\left(1 - \frac{\alpha_0}{2}; n-1\right) \\
\Leftrightarrow \psi(|t|; n-1)
& \ge \psi\left(\psi^{-1}\left(1 - \frac{\alpha_0}{2}; n-1\right); n-1\right) \\
\Leftrightarrow \psi(|t|; n-1)
& \ge 1 - \frac{\alpha_0}{2} \\
\Leftrightarrow \mathbb{P}(T \le |t|)
& \ge 1 - \frac{\alpha_0}{2} \\
\Leftrightarrow \frac{\alpha_0}{2}
& \ge 1 - \mathbb{P}(T \le |t|) \\
\Leftrightarrow \frac{\alpha_0}{2}
& \ge \mathbb{P}(T \ge |t|) \\
\Leftrightarrow \alpha_0
& \ge 2 \mathbb{P}(T \ge |t|) \; .
\end{split}
\end{align}


<!-- Analyse der Powerfunktion -->
# Modellevaluation (8) Analyse der Powerfunktion

\small
Wir betrachten die Testgütefunktion
\begin{equation}
q_\phi : \mathbb{R} \to [0,1],
\mu \mapsto q_\phi(\mu)
:= 1 - \psi(k_{\alpha_0}; \delta, n-1) + \psi(-k_{\alpha_0}; \delta, n-1)
\end{equation}

bei kontrolliertem Testumfang, also für $k_{\alpha_0} := \psi^{-1}(1-\alpha_0/2; n-1)$ mit festem $\alpha_0$ als Funktion des Nichtzentralitätsparameters und des Stichprobenumfangs. Namentlich hängt hier $k_{\alpha_0}$ sowohl von $\alpha_0$ als auch von $n$ ab.

Es ergibt sich die bivariate reellwertige Funktion
\begin{equation}
\pi : \mathbb{R} \times \mathbb{N} \to [0,1],
(\delta,n) \mapsto
\pi(\delta,n) := 1 - \psi(k_{\alpha_0}; \delta, n-1) + \psi(-k_{\alpha_0}; \delta, n-1)
\end{equation}
Bei festgelegten $\alpha_0$ hängt die Powerfunktion des zweiseitigen T-Tests mit einfacher Nullhypothese also vom unbekannten Wert $\delta$ und von der Stichprobengröße $n$ ab. Wir visualisieren diese Abhängigkeiten untenstehend.


<!-- Visualisierung -->
# Modellevaluation (8) Analyse der Powerfunktion

\small
Powerfunktion für $\alpha_0 = 0.05$

```{r, eval = F, echo = F}
dev.new()
graphics.off()
par(
    family      = "sans",
    mfcol       = c(1,1),
    pty         = "m",
    bty         = "l",
    lwd         = 1,
    las         = 1,
    xaxs        = "i",
    yaxs        = "i",
    font.main   = 1,
    cex         = 1.2,
    cex.main    = 1.2)

# Szenariospezifikation
d_min       = -5                                # delta Minimum
d_max       =  5                                # delta Maximum
d_res       = 50                                # delta Auflösung
delta       = seq(d_min, d_max, len = d_res)    # delta Raum
n_min       = 1                                 # n Minimum
n_max       = 30                                # n Maximum
n_res       = 50                                # n Auflösung
n           = seq(n_min,n_max, len = n_res)     # n Raum

# Berechnung
alpha_0   = 0.05
pi        = matrix(rep(NaN, d_res*n_res), nrow = d_res)
for(i in 1:d_res){
    for(j in 1:n_res){
        k_alpha_0 = qt(1 - alpha_0/2, n[j]-1)
        pi[i,j]   = 1-pt(k_alpha_0, n[j]-1, delta[i])+pt(-k_alpha_0, n[j]-1, delta[i])
    }
}

# Visualisierung
persp(delta, n, pi,
    d           = 1,
    col         = "gray90",
    theta       = 21,
    phi         = 30,
    lwd         = 0.5,
    scale       = T,
    ticktype    = "detailed",
    r           = 1.5)
dev.copy2pdf(
    file        = "Abbildungen/t_test_ungerichtet_power_005.pdf",
    width       = 7,
    height      = 7)
```

```{r, echo = F, out.width = "65%"}
knitr::include_graphics("Abbildungen/t_test_ungerichtet_power_005.pdf")
```


<!-- Visualisierung -->
# Modellevaluation (8) Analyse der Powerfunktion

\small
Powerfunktion für $\alpha_0 = 0.001$

```{r, eval = F, echo = F}
dev.new()
graphics.off()
par(
    family      = "sans",
    mfcol       = c(1,1),
    pty         = "m",
    bty         = "l",
    lwd         = 1,
    las         = 1,
    xaxs        = "i",
    yaxs        = "i",
    font.main   = 1,
    cex         = 1.2,
    cex.main    = 1.2)

# Szenariospezifikation
d_min       = -5                                # delta Minimum
d_max       =  5                                # delta Maximum
d_res       = 50                                # delta Auflösung
delta       = seq(d_min, d_max, len = d_res)    # delta Raum
n_min       = 1                                 # n Minimum
n_max       = 30                                # n Maximum
n_res       = 50                                # n Auflösung
n           = seq(n_min,n_max, len = n_res)     # n Raum

# Berechnung
alpha_0   = 0.001
pi        = matrix(rep(NaN, d_res*n_res), nrow = d_res)
for(i in 1:d_res){
    for(j in 1:n_res){
        k_alpha_0 = qt(1 - alpha_0/2, n[j]-1)
        pi[i,j]   = 1-pt(k_alpha_0, n[j]-1, delta[i])+pt(-k_alpha_0, n[j]-1, delta[i])
    }
}

# Visualisierung
persp(delta, n, pi,
    d           = 1,
    col         = "gray90",
    theta       = 21,
    phi         = 30,
    lwd         = 0.5,
    scale       = T,
    ticktype    = "detailed",
    r           = 1.5)
dev.copy2pdf(
    file        = "Abbildungen/t_test_ungerichtet_power_0001.pdf",
    width       = 7,
    height      = 7)
```

```{r, echo = F, out.width = "65%"}
knitr::include_graphics("Abbildungen/t_test_ungerichtet_power_0001.pdf")
```


<!-- Visualisierung -->
# Modellevaluation (8) Analyse der Powerfunktion

\small
Powerfunktionen für $\mu_0 = 0$

\vspace{2mm}
```{r, echo = F, eval = F}
dev.new()
graphics.off()
library(latex2exp)
par(
    family      = "sans",
    mfcol       = c(2,2),
    pty         = "m",
    bty         = "l",
    lwd         = 1,
    las         = 1,
    xaxs        = "i",
    yaxs        = "i",
    font.main   = 1,
    cex         = 1,
    cex.main    = 1)

# Szenariospezifikation
mu_0      = 0                                 # einfache Nullhypothese
d_min     = -5                                # d Minimum
d_max     =  5                                # d Maximum
d_res     = 50                                # d Auflösung
d         = seq(d_min, d_max, len = d_res)    # d Raum
n_min     = 2                                 # n Minimum
n_max     = 50                                # n Maximum
n_res     = 1e2                               # n Auflösung
n         = seq(n_min,n_max, len = n_res)     # n Raum

# Funktion von d, n = 12, \alpha_0 = 0.05
alpha_0   = 0.05
n_fix     = 12
k_alpha_0 = qt(1 - alpha_0/2, n_fix-1)
pi_d      = 1-pt(k_alpha_0, n_fix-1, d)+pt(-k_alpha_0, n_fix-1, d)
plot(d, pi_d,
    type      = "l",
    lwd       = 2,
    ylim      = c(0,1),
    ylab      = " ",
    xlab      = TeX("$\\delta$"),
    main      = TeX("$\\pi(\\delta,n = 12),\\, \\alpha_0 = 0.05$"))

# Funktion von d, n = 12, \alpha_0 = 0.001
alpha_0   = 0.001
n_fix     = 12
k_alpha_0 = qt(1-alpha_0/2, n_fix-1)
pi_d      = 1-pt(k_alpha_0, n_fix-1, d)+pt(-k_alpha_0, n_fix-1, d)
plot(d, pi_d,
    type      = "l",
    lwd       = 2,
    ylim      = c(0,1),
    ylab      = " ",
    xlab      = TeX("$\\delta$"),
    main      = TeX("$\\pi(\\delta,n = 12),\\, \\alpha_0 = 0.001$"))

# Funktion von n, \delta = 3, \alpha_0 = 0.05
alpha_0   = 0.05
d_fix     = 3
k_alpha_0 = qt(1-alpha_0/2, n-1)
pi_n      = 1-pt(k_alpha_0, n-1, d_fix)+pt(-k_alpha_0, n-1, d_fix)
plot(n, pi_n,
    type      = "l",
    lwd       = 2,
    ylab      = " ",
    ylim      = c(0,1),
    xlab      = TeX("$n$"),
    main      = TeX("$\\pi(\\delta = 3,n),\\, \\alpha_0 = 0.05$"))

# Funktion von n, \delta = 3, \alpha_0 = 0.001
alpha_0   = 0.001
d_fix     = 3
k_alpha_0 = qt(1-alpha_0/2, n-1)
pi_n      = 1-pt(k_alpha_0, n-1, d_fix)+pt(-k_alpha_0, n-1, d_fix)
plot(n, pi_n,
    type      = "l",
    lwd       = 2,
    ylab      = " ",
    ylim      = c(0,1),
    xlab      = TeX("$n$"),
    main      = TeX("$\\pi(\\delta = 3,n),\\, \\alpha_0 = 0.001$"))

# Speichern
dev.copy2pdf(
    file      = "Abbildungen/t_test_ungerichtet_powerfunktionen.pdf",
    width     = 8,
    height    = 7)
```

```{r, echo = F, out.width = "65%"}
knitr::include_graphics("Abbildungen/t_test_ungerichtet_powerfunktionen.pdf")
```


<!-- Praktisches Vorgehen -->
# Modellevaluation (8) Analyse der Powerfunktion

Praktisches Vorgehen
\small

Mit größerem $n$ steigt die Powerfunktion des Tests an:

* Ein großer Stichprobenumfang ist besser als ein kleiner Stichprobenumfang.

* Kosten für die Erhöhung des Stichprobenumfangs werden aber nicht berücksichtigt.

$\Rightarrow$ Die Theorie statistischer Hypothesentests ist nicht besonders lebensnah.

\vspace{1mm}

Die Powerfunktion hängt vom wahren, aber unbekannten Wert $\delta = \sqrt{n}\left(\frac{\mu - \mu_0}{\sigma}\right)$ ab.

$\Rightarrow$ Wenn man $\delta$ schon kennen würde, würde man den Test nicht durchführen.

\vspace{4mm}

Generell wird folgendes Vorgehen favorisiert:

* Man legt das Signifikanzniveau $\alpha_0$ fest und evaluiert die Powerfunktion.

* Man wählt einen Mindestparameterwert $\delta^*$, den man mit $\pi(\delta,n) = b$ detektieren möchte.

* Ein konventioneller Wert ist $b = 0.8$.

* Man liest die für $\pi(\delta = \delta^*,n) = b$ nötige Stichprobengröße $n$ ab.


<!-- Visualisierung -->
# Modellevaluation (8) Analyse der Powerfunktion

Praktisches Vorgehen

\vspace{4mm}
```{r, echo = F, eval = F}
# Szenariospezifikation
sigma     = 1                                                       # bekanntes \sigma
mu_0      = 0                                                       # einfache Nullhypothese
n_min     = 2                                                       # n Minimum
n_max     = 20                                                      # n Maximum
n_res     = 1e2                                                     # n Auflösung
n         = seq(n_min,n_max, len = n_res)                           # n Raum
alpha_0   = 0.05                                                    # Signifikanzniveau

# Poweranalyse
d_fix     = 3                                                       # fester Nichtzentralitätsparameter
k_alpha_0 = qt(1-alpha_0/2, n-1)                                    # kritische Werte
pi_n      = 1-pt(k_alpha_0, n-1, d_fix)+pt(-k_alpha_0, n-1, d_fix)  # Powerfunktion
beta      = 0.8                                                     # gewünschter Powerfunktionswert
i         = 1                                                       # Indexinitialisierung
n_min     = NaN                                                     # minimales n Initialisierung
while(pi_n[i] < beta){                                              # Solange \pi(\delta*,n) < \beta
    n_min = n[i]                                                    # Aufnahme des minimal nötigen n
    i     = i + 1                                                   # und Erhöhung des Indexes
}
cat("minimal nötiges n =", ceiling(n_min))                          # Ausgabe
```

```{r, echo = F, eval = F}
dev.new()
graphics.off()
par(
    family      = "sans",
    mfcol       = c(1,1),
    pty         = "m",
    bty         = "l",
    lwd         = 1,
    las         = 1,
    xaxs        = "i",
    yaxs        = "i",
    font.main   = 1,
    cex         = 1.2,
    cex.main    = 1.2)

# Visualisierung
plot(n, pi_n,
    type        = "l",
    lwd         = 2,
    ylab        = " ",
    ylim        = c(0,1),
    xlab        = TeX("$n$"),
    main        = TeX("$\\pi(\\delta = 3,n)\\, für \\,\\alpha_0 = 0.05,\\, \\mu_0 = 0"))
lines(2, beta,
    type        = "p",
    pch         = 16,
    xpd         = TRUE)
lines(n_min, 0,
    type        = "p",
    pch         = 16,
    xpd         = TRUE)
arrows(
    x0          = min(n),
    y0          = beta,
    x1          = n_min,
    y1          = beta,
    col         = "darkorange",
    angle       = 20,
    length      = .1)
arrows(
    x0          = n_min,
    y0          = beta,
    x1          = n_min,
    y1          = 0,
    col         = "darkorange",
    angle       = 20,
    length      = .1)
text(3 , 0.85, TeX("$b$"),      xpd = TRUE, cex = 1.2)
text(20, 0.05, TeX("$n_{opt}"), xpd = TRUE, cex = 1.2)

# Speichern
dev.copy2pdf(
    file        = "Abbildungen/t_test_ungerichtet_stichprobengroesse.pdf",
    width       = 6,
    height      = 5)
```

```{r, echo = F, out.width = "65%"}
knitr::include_graphics("Abbildungen/t_test_ungerichtet_stichprobengroesse.pdf")
```


<!-- Abschnitt 2.5: Anwendung/Praxis -->
# Einstichproben-T-Tests

\large
\setstretch{2.5}
\vfill

Anwendungsszenario

Modellformulierung

Modellschätzung

Modellevaluation

**Anwendung/Praxis**

\vfill


<!-- Anwendungsszenario -->
# Anwendung/Praxis

\vspace{2mm}
\textcolor{darkblue}{Anwendungsbeispiel}

```{r, echo = F, out.width = "90%"}
knitr::include_graphics("Abbildungen/beispielstudie_einstichproben-t-test.pdf")
```

\small
Wir nehmen an, dass die Datenpunkte unabhängige und identisch verteilte (u.i.v.) Realisierungen von ZVen $y_i \sim N(\mu,\sigma^2)$ sind und nehmen weiter an, dass wir sind an der Quantifizierung der Unsicherheit beim inferentiellen Vergleich des wahren, aber unbekannten Erwartungswertparameters $\mu$ im Sinne eines Hypothesentests interessiert sind.


<!-- Anwendungsszenario -->
# Anwendung/Praxis

\small
\vspace{2mm}
\textcolor{darkblue}{Daten einlesen}

\tiny
\setstretch{0.5}

\vspace{1mm}
```{r, echo = T}
fname       = "Daten/T-Tests_Daten.csv"
D           = read.table(fname, sep = ",", header = TRUE)
```

\vspace{-1mm}
```{r, echo = F}
knitr::kable(D[c(1:40),],
             align = "cccccr",
             "pipe")
```


<!-- Anwendungsszenario -->
# Anwendung/Praxis

\vspace{1mm}

\tiny
\setstretch{0.8}

```{r, echo = T, eval = F}
# Datensatz von Interesse
BDI_F2F     = D$dBDI[D$Setting == "F2F"]        # BDI-Differenzwerte in der F2F-Gruppe

# Histogrammparameter
h           = 1                                 # gewünschte Klassenbreite
b_0         = min(BDI_F2F)                      # b_0
b_k         = max(BDI_F2F)                      # b_k
k           = ceiling((b_k - b_0)/h)            # Anzahl der Klassen
b           = seq(b_0, b_k, by = h)             # Klassen [b_0, ..., b_k]
ylimits     = c(0,0.15)                         # y-Achsenlimits
xlimits     = c(-5,15)                          # x-Achsenlimits

# Abbildungsparameter
par(                                            # für Details siehe ?par
    mfcol       = c(1,1),                       # 1 x 1 Panelstruktur
    family      = "sans",                       # Serif-freier Fonttyp
    pty         = "s",                          # quadratische Abbildungsregion
    bty         = "l",                          # L-förmige Box
    las         = 1,                            # horizontale Achsenbeschriftung
    xaxs        = "i",                          # x-Achse bei y = 0
    yaxs        = "i",                          # y-Achse bei x = 0
    font.main   = 1,                            # Titel nicht fett
    cex         = 1,                            # Textvergrößerungsfaktor
    cex.main    = 1)                            # Titeltextvergrößerungsfaktor

# Histogramm
hist(BDI_F2F,                                   # Delta-BDI_Werte von Therapiebedingung i
    breaks    = b,                              # Histogrammklassen
    freq      = F,                              # normierte relative Häufigkeit
    xlim      = xlimits,                        # x-Achsenlimits
    ylim      = ylimits,                        # y-Achsenlimits
    xlab      = TeX("$\\Delta BDI$"),           # x-Achsenbeschriftung
    ylab      = "geschätzte Wahrscheinlichkeit",# y-Achsenbeschriftung
    main      = "")                             # Titelbeschriftung

# Speichern
dev.copy2pdf(
    file      = "Abbildungen/F2F_histogramm.pdf",
    width     = 4,
    height    = 4)
```


<!-- Anwendungsszenario -->
# Anwendung/Praxis

\vspace{2mm}

\tiny
\setstretch{1}

```{r, echo = T, eval = T}
# Einlesen der Daten
fname         = "Daten/T-Tests_Daten.csv"
D             = read.table(fname, sep = ",", header = TRUE)

# Initialisierung eines Dataframes
tp            = c("F2F")                            # Therapiebedingungen
ntp           = length(tp)                          # Anzahl Therapiebedingungen
S             = data.frame(                         # Dataframe-Erzeugung
                    n         = rep(NaN,ntp),       # Stichprobengrößen
                    Max       = rep(NaN,ntp),       # Maxima
                    Min       = rep(NaN,ntp),       # Minima
                    Median    = rep(NaN,ntp),       # Mediane
                    Mean      = rep(NaN,ntp),       # Mittelwerte
                    Var       = rep(NaN,ntp),       # Varianzen
                    Std       = rep(NaN,ntp),       # Standardabweichungen
                    row.names = tp)                 # Therapiebedingungen

# Iterationen über Therapiebedingungen
for(i in 1:ntp){
    data        = D$dBDI[D$Setting == tp[i]]        # Daten
    S$n[i]      = length(data)                      # Stichprobengröße
    S$Max[i]    = max(data)                         # Maxima
    S$Min[i]    = min(data)                         # Minima
    S$Median[i] = median(data)                      # Mediane
    S$Mean[i]   = mean(data)                        # Mittelwerte
    S$Var[i]    = var(data)                         # Varianzen
    S$Std[i]    = sd(data)                          # Standardabweichungen
}
```


<!-- Anwendungsszenario -->
# Anwendung/Praxis

\vspace{2mm}

\small
\textcolor{darkblue}{Deskriptive Statistiken der negativen PostBDI-PreBDI-Differenzen bei Face-to-Face-Therapie}

\vspace{1mm}
```{r, echo = F, out.width = "50%"}
knitr::include_graphics("Abbildungen/F2F_histogramm.pdf")
```

\footnotesize
\setstretch{1}
```{r, echo = T}
# Ausgabe
print.AsIs(S)
```


<!-- Datenanalyse -->
# Anwendung/Praxis

\vspace{2mm}

\tiny
\setstretch{0.8}
```{r, echo = T}
# Daten einlesen
fname       = "Daten/T-Tests_Daten.csv"                            # Dateiname
D           = read.table(fname, sep = ",", header = TRUE)          # Dataframe
y           = D$dBDI[D$Setting == "F2F"]                           # BDI-Differenzwerte in der F2F-Gruppe

# Modellformulierung
n          = length(y)                                             # Anzahl Datenpunkte
p          = 1                                                     # Anzahl Betaparameter
X          = matrix(rep(1,n), nrow = n)                            # n x p Designmatrix

# Parameterschätzung
beta_hat   = solve(t(X) %*% X) %*% t(X) %*% y                      # Betaparameterschätzer
eps_hat    = y - X %*% beta_hat                                    # Residuenvektor
sigsqr_hat = (t(eps_hat) %*% eps_hat) /(n-p)                       # Varianzparameterschätzer

# Konfidenzintervall
delta      = 0.95                                                  # Konfidenzbedingung
t_delta    = qt((1+delta)/2,n-1)                                   # \Psi^{-1}((1+\delta)/2; n-1)
lambda     = diag(solve(t(X) %*% X))                               # \lambda_j Werte
kappa      = matrix(rep(NaN,p*2), nrow = p)                        # \beta_j Konfidenintervall-Array
for(j in 1:p){                                                     # Iteration über \beta_j
    kappa[j,1] = beta_hat[j]-sqrt(sigsqr_hat*lambda[j])*t_delta    # untere KI-Grenze
    kappa[j,2] = beta_hat[j]+sqrt(sigsqr_hat*lambda[j])*t_delta    # obere  KI-Grenze
}

# Hypothesentest
c          = matrix(c(1),nrow = p)                                 # Kontrastgewichtsvektor
mu_0       = 0                                                     # Nullhypothese
alpha_0    = 0.05                                                  # Signifikanzniveau
k_alpha_0  = qt(1 - (alpha_0/2), n-1)                              # kritischer Wert
t_num      = t(c) %*% beta_hat - mu_0                              # T-Teststatistik-Zähler
t_den      = sqrt(sigsqr_hat %*% t(c)*solve(t(X) %*% X)%*%c)       # T-Teststatistik-Nenner
t          = t_num/t_den                                           # T-Teststatistik
if(abs(t) >= k_alpha_0){phi = 1} else {phi = 0}                    # Test 1_{|T(X) >= k_alpha_0|}
pval       = 2*(1 - pt(abs(t), n-1))                               # p-Wert
d          = t/sqrt(n)                                             # Cohen's d 
```

\vspace{-1mm}
```{r, echo = F}
cat(  "fg        = ", n-1,
    "\nkappa_1   = ", kappa,
    "\nt         = ", t,
    "\nalpha_0   = ", alpha_0,
    "\nk_alpha_0 = ", k_alpha_0,
    "\nphi       = ", phi,
    "\np-Wert    = ", pval,
    "\nCohen's d = ", d)
```


<!-- Datenanalyse -->
# Anwendung/Praxis

\small
\textcolor{darkblue}{Anwendungszenario}

\vspace{2mm}

\tiny
\setstretch{1.2}
```{r, echo = T}
# automatischer Einstichproben-T-Test
varphi = t.test(y,                             # Datensatz
             alternative = c("two.sided"),     # H_1: \mu \neq \mu_0
             mu          = 0,                  # \mu_0 (sic!)
             conf.level  = 1-alpha_0)          # \delta = 1 - \alpha_0

# Ausgabe
print(varphi)

# genauere Ausgabe von t
paste(varphi[1]$statistic)

# genauere Ausgabe von p
paste(varphi[3]$p.value)
```


<!-- Datensatz: Great 10k -->
# Anwendung/Praxis

\small
Datensatz: Zielzeiten beim Great 10k (08.10.2017), getrennt nach Altersklasse ($n = 4883$)

```{r, echo = F, eval = T}
# Daten einlesen
filename = "Daten/great_10k.csv"
D        = read.csv(filename)

# Daten reduzieren
excl     = c("FU14", "FU16", "FU18", "FU20", "FU23", "F70", "F75", "F80", "MU14", "MU16", "MU18", "MU20", "MU23", "M70", "M75", "M80")
incl     = c("FE", "FH", "F30", "F35", "F40", "F45", "F50", "F55", "F60", "F65", "ME", "MH", "M30", "M35", "M40", "M45", "M50", "M55", "M60", "M65")
D        = D[!(D$AgeGroup %in% excl),]
D        = D[!(D$X5kTime  == "NaN:NaN:NaN"),]
D        = D[!(D$X10kTime == "NaN:NaN:NaN"),]
n        = nrow(D)

# Daten umsortieren
D$AgeGroup = factor(D$AgeGroup, levels = incl)

# Daten umrechnen
t5_hms   = D$X5kTime
t5_min   = rep(0, n)
t10_hms  = D$X10kTime
t10_min  = rep(0, n)
for(i in 1:n){
    t5         = t5_hms[i]
    t10        = t10_hms[i]
    t5_min[i]  = as.numeric(substr(t5,1,2))*60  + as.numeric(substr(t5,4,5))  + as.numeric(substr(t5,7,8))/60
    t10_min[i] = as.numeric(substr(t10,1,2))*60 + as.numeric(substr(t10,4,5)) + as.numeric(substr(t10,7,8))/60
}
D$T5k1   = t5_min
D$T5k2   = t10_min-t5_min
D$T10k   = t10_min
D$Tdiff  = D$T5k2 - D$T5k1
```

```{r, echo = F, eval = F}
# Daten visualisieren
library(vioplot)
par(
    family      = "sans",
    mar         = c(3,3,1,1),
    pty         = "m",
    bty         = "l",
    lwd         = 1,
    las         = 1,
    mgp         = c(2,1,0),
    xaxs        = "i",
    yaxs        = "i",
    font.main   = 1.5,
    cex         = 1.5)

# Violinplot
vioplot(D$T10k ~ D$AgeGroup, D,
    col         = "gray80",
    rectCol     = "black",
    lineCol     = "white",
    colMed      = "black",
    border      = "black",
    pchMed      = 16,
    plotCentre  = "lines",
    xlab        = "Altersklasse",
    ylab        = "Zielzeit [min]",
    ylim        = c(25,85),
    drawRect    = FALSE)

# Datenpunkte
stripchart(D$T10k ~ D$AgeGroup, D,
    method      = "jitter",
    xaxt        = "n",
    vertical    = TRUE,
    pch         = 19,
    col         = "black",
    add         = TRUE,
    cex         = 0.4)

# Mittelwerte
dx = 0.3
for (i in 1:length(incl)) {
    segments(
        x0      = i - dx,
        x1      = i + dx,
        y0      = median(D$T10k[D$AgeGroup==incl[i]]),
        y1      = median(D$T10k[D$AgeGroup==incl[i]]),
        col     = "black",
        lwd     = 2)
}

# Speichern
dev.copy2pdf(
    file        = "Abbildungen/great_10k_violin_plot.pdf",
    width       = 16,
    height      = 9)
```

\vspace{2mm}
```{r, echo = F, out.width = "100%"}
knitr::include_graphics("Abbildungen/great_10k_violin_plot.pdf")
```


<!-- Einstichproben-T-Test (falsch) -->
# Anwendung/Praxis

\small
Einstichproben-T-Test: 10-km-Zeit, alle Teilnehmer ($n = 4883$)

\vspace{2mm}
```{r, echo = T, eval = T}
# Daten extrahieren
D$T10k = t10_min                                            # 10-km-Zeit [min]

# Einstichproben-T-Test (falsch)
n      = nrow(D)                                            # Anzahl Datenpunkte
p      = 1                                                  # Anzahl Regressoren
y      = matrix(D$T10k, nrow = n)                           # Datenvektor
X      = matrix(rep(1,n), ncol = p)                         # Designmatrix
```

```{r, echo = F, eval = T}
# Einstichproben-T-Test (falsch)
b_hat  = solve(t(X) %*% X) %*% t(X) %*% y                   # Betaparameterschätzer
e_hat  = y - X %*% b_hat                                    # Residuenvektor
s2_hat = (t(e_hat) %*% e_hat)/(n-p)                         # Varianzparameterschätzer
c      = matrix(c(1), nrow = p)                             # Kontrastvektor
cTb0   = 0                                                  # Nullhypothese
t      = (t(c)%*%b_hat - cTb0)/sqrt(s2_hat * t(c)%*%solve(t(X) %*% X)%*%c)  # T-Statistik
d      = t/sqrt(n)                                          # Cohen's d 
pval   = 2*(1 - pt(abs(t), n-1))                            # p-Wert
cat(  "Betaparameterschätzer          : ", round(b_hat,  digits = 3),
    "\nVarianzparameterschätzer       : ", round(s2_hat, digits = 3),
    "\nEinstichproben-T-Teststatistik : ", round(t,      digits = 3),
    "\nCohen's  d                     : ", round(d,      digits = 3),
    "\np-Wert                         : ", round(pval,   digits = 3), "\n\n")
```


<!-- Datensatz: Great 10k -->
# Anwendung/Praxis

\small
Datensatz: erste vs. zweite 5 km beim Great 10k (08.10.2017), alle Teilnehmer ($n = 4883$)

```{r, echo = F, eval = F}
# Daten visualisieren
par(
    family      = "sans",
    mar         = c(3,3,1,1),
    pty         = "s",
    bty         = "l",
    lwd         = 1,
    las         = 1,
    mgp         = c(2,1,0),
    xaxs        = "i",
    yaxs        = "i",
    font.main   = 1.5,
    cex         = 1.5)

# Streudiagramm
plot(D$T5k1, D$T5k2,
    pch         = 16,
    xlab        = "erste 5 km [min]",
    ylab        = "zweite 5 km [min]",
    xlim        = c(10, 50),
    ylim        = c(10, 50))

# Liniendiagramm
abline(
    coef        = c(0, 1),
    lty         = 1,
    lwd         = 4,
    col         = "gray80")

# Speichern
dev.copy2pdf(
    file        = "Abbildungen/great_10k_streudiagramm.pdf",
    width       = 9,
    height      = 9)
```

\vspace{2mm}
```{r, echo = F, out.width = "60%"}
knitr::include_graphics("Abbildungen/great_10k_streudiagramm.pdf")
```


<!-- Einstichproben-T-Test (richtig) -->
# Anwendung/Praxis

\small
Einstichproben-T-Test: Differenz zweite minus erste 5 km, alle Teilnehmer ($n = 4883$)

\vspace{2mm}
```{r, echo = T, eval = T}
# Daten extrahieren
D$T5k1 = t5_min                                             # erste  5 km [min]
D$T5k2 = t10_min-t5_min                                     # zweite 5 km [min]
D$Tdiff= D$T5k2 - D$T5k1                                    # Differenz [min]

# Einstichproben-T-Test (richtig)
n      = nrow(D)                                            # Anzahl Datenpunkte
p      = 1                                                  # Anzahl Regressoren
y      = matrix(D$Tdiff, nrow = n)                          # Datenvektor
X      = matrix(rep(1,n), ncol = p)                         # Designmatrix
```

```{r, echo = F, eval = T}
# Einstichproben-T-Test (richtig)
b_hat  = solve(t(X) %*% X) %*% t(X) %*% y                   # Betaparameterschätzer
e_hat  = y - X %*% b_hat                                    # Residuenvektor
s2_hat = (t(e_hat) %*% e_hat)/(n-p)                         # Varianzparameterschätzer
c      = matrix(c(1), nrow = p)                             # Kontrastvektor
cTb0   = 0                                                  # Nullhypothese
t      = (t(c)%*%b_hat - cTb0)/sqrt(s2_hat * t(c)%*%solve(t(X) %*% X)%*%c)  # T-Statistik
d      = t/sqrt(n)                                          # Cohen's d 
pval   = 2*(1 - pt(abs(t), n-1))                            # p-Wert
cat(  "Betaparameterschätzer          : ", round(b_hat,  digits = 3),
    "\nVarianzparameterschätzer       : ", round(s2_hat, digits = 3),
    "\nEinstichproben-T-Teststatistik : ", round(t,      digits = 3),
    "\nCohen's d                      : ", round(d,      digits = 3),
    "\np-Wert                         : ", round(pval,   digits = 3), "\n\n")
```


<!-- Abschnitt 3: Zweistichproben-T-Tests -->
#

\large
\setstretch{3}
\vfill

Überblick

Einstichproben-T-Tests

**Zweistichproben-T-Tests**

Selbstkontrollfragen

\vfill


<!-- Kapitel 3: Zweistichproben-T-Tests -->
#

\center
\huge
\vfill
\noindent Zweistichproben-T-Tests
\vfill


<!-- Inhaltsverzeichnis: Zweistichproben-T-Tests -->
# Zweistichproben-T-Tests

\large
\setstretch{2.5}
\vfill

Anwendungsszenario

Modellformulierung

Modellschätzung

Modellevaluation

Anwendung/Praxis

\vfill


<!-- Abschnitt 3.1: Anwendungsszenario -->
# Zweistichproben-T-Tests

\large
\setstretch{2.5}
\vfill

**Anwendungsszenario**

Modellformulierung

Modellschätzung

Modellevaluation

Anwendung/Praxis

\vfill


<!-- Anwendungsszenario -->
# Anwendungsszenario {.t}

\vspace{2mm}
\setstretch{2}
\textbf{\textcolor{darkblue}{Zwei Gruppen}} (Stichproben) randomisierter experimenteller Einheiten.

Annahme unabhängiger identischer Normalverteilungen $N(\mu_1,\sigma^2)$ und $N(\mu_2,\sigma^2)$.

$\mu_1,\mu_2$ und $\sigma^2$ unbekannt.

Annahme eines identischen Varianzparameters für beide Gruppen.

Quantifizieren der Unsicherheit beim inferentiellen Vergleich von $\mu_1$ mit $\mu_2$ beabsichtigt.


<!-- Anwendungsszenario -->
# Anwendungsszenario {.t}

\vspace{2mm}
\setstretch{1.8}
\textcolor{darkblue}{Anwendungsbeispiele}

\small
BDI-Differenzwert-Datenanalyse bei zwei Gruppen von Patient:innen
\vspace{-2mm}

* Gruppe 1: Face-to-Face-Therapie; Gruppe 2: Online-Therapie
* $\mu_1 \neq \mu_2 \Leftrightarrow$ Unterscheiden sich die Therapiewirksamkeiten?

Forcierte Schwimmtest-Datenanalyse bei zwei Gruppen genmanipulierter Mäuse
\vspace{-2mm}

* Gruppe 1: Wildtyp; Gruppe 2: Serotoninrezeptormutation
* $\mu_1 \neq \mu_2 \Leftrightarrow$ Trägt Serotoninrezeptor zum Schwimmtestverhalten bei?

Analyse von fMRT-Daten in den klinischen Neurowissenschaften
\vspace{-2mm}

* Gruppe 1: Alzheimer-Patienten; Gruppe 2: gesunde Kontrollen
* $\mu_1 \neq \mu_2 \Leftrightarrow$ Verändert Alzheimer-Erkrankung Hirnaktivität bei Enkodierung ins Gedächtnis?


<!-- Anwendungsszenario -->
# Anwendungsszenario {.t}

\vspace{2mm}
\textcolor{darkblue}{Anwendungsbeispiel}

```{r, echo = F, out.width = "90%"}
knitr::include_graphics("Abbildungen/beispielstudie_zweistichproben-t-test.pdf")
```

\small
Wir nehmen an, dass die Datenpunkte der Face-to-Face-Therapiegruppe u.i.v. Realisierungen von ZVen $y_{1j} \sim N(\mu_1,\sigma^2)$ und dass die Datenpunkte der Online-Therapiegruppe u.i.v. Realisierungen von ZVen $y_{2j} \sim N(\mu_2,\sigma^2)$ sind ($j = 1,...,40$). Wir nehmen weiter an, dass wir an der Quantifizierung der Unsicherheit beim inferentiellen Vergleich der wahren, aber unbekannten Erwartungswertparameter $\mu_1$ und $\mu_2$ im Sinne eines Hypothesentests interessiert sind.


<!-- Abschnitt 3.2: Modellformulierung -->
# Zweistichproben-T-Tests

\large
\setstretch{2.5}
\vfill

Anwendungsszenario

**Modellformulierung**

Modellschätzung

Modellevaluation

Anwendung/Praxis

\vfill


<!-- Definition: Zweistichproben-T-Test-Modell -->
# Modellformulierung

\footnotesize
\begin{definition}[Zweistichproben-T-Test-Modell]

\justifying
$y_{ij}$ mit $i = 1,2$ und $j = 1,...,n_i$ seien Zufallsvariablen, die die Datenpunkte eines Anwendungsszenarios für den Zweistichproben-T-Test modellieren. Dann hat das \textit{Zweistichproben-T-Test-Modell} die strukturelle Form
\begin{equation}
y_{ij} = \mu_i + \varepsilon_{ij}
\quad \mbox{mit} \quad
\varepsilon_{ij} \sim N(0,\sigma^2)
\quad \mbox{u.i.v. für} \quad
i = 1,2, j = 1,...,n_i
\quad \mbox{mit} \quad
\mu_i \in \mathbb{R}
\quad \mbox{und} \quad
\sigma^2 > 0,
\end{equation}

die Datenverteilungsform
\begin{equation}
y_{ij} \sim N(\mu_i,\sigma^2)
\quad \mbox{u.i.v. für} \quad
i = 1,2, j = 1,...,n_i
\quad \mbox{mit} \quad
\mu_i \in \mathbb{R}
\quad \mbox{und} \quad
\sigma^2 > 0,
\end{equation}

und für den Datenvektor $y = (y_{11}, ...,y_{1n_1}, y_{21}, ...,y_{2n_2})^\mathrm{T}$ und $n := n_1 + n_2$ die Designmatrixform
\begin{equation}
y      = X\beta + \varepsilon
\quad \mbox{mit} \quad
X     := \begin{pmatrix} 1_{n_1} & 0_{n_1} \\ 0_{n_2} & 1_{n_2} \end{pmatrix} \in \mathbb{R}^{n \times 2}, \quad
\beta := \begin{pmatrix} \mu_1 \\ \mu_2 \end{pmatrix} \in \mathbb{R}^2, \quad
\varepsilon \sim N(0_n,\sigma^2I_n),
\quad \mbox{und} \quad
\sigma^2 > 0.
\end{equation}

\end{definition}

Bemerkungen

* $i$ indiziert die Gruppen, $j$ indiziert die experimentellen Einheiten in jeder Gruppe.
* $n_1$ und $n_2$ sind die Gruppengrößen, $n$ repräsentiert die Gesamtanzahl an Datenpunkten.
* Die Äquivalenz der drei Modellformen ergibt sich mit der Modellformulierung des ALM (vgl. Einheit (5) in *Allgemeines Lineares Modell*) und aus den Regeln der Matrixmultiplikation.
* Die Anzahl der Betaparameter ist $p = 2$.


<!-- Designmatrix des Modells -->
# Modellformulierung

Designmatrix des Zweistichproben-T-Test-Modells ($n = 20$, $p = 2$)

```{r, echo = F, eval = F}
# Designmatrixerzeugung
n_1    = 10                                  # Anzahl von Datenpunkten Gruppe 1
n_2    = 10                                  # Anzahl von Datenpunkten Gruppe 2
n      = n_1 + n_2                           # Gesamtanzahl der Datenpunkte
p      = 2                                   # Anzahl von Betaparametern
X      = matrix(c(rep(1,n_1), rep(0,n_1),    # n x p Designmatrix
                  rep(0,n_2), rep(1,n_2)),
                nrow  = n)
Xp     = X

# Abbildungsparameter
library(plot.matrix)
graphics.off()
dev.new()
par(
    family    = "sans",
    mar       = c(1,1,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  = 2)

# Designmatrix
plot(Xp,
    col       = gray(seq(0, 1, length.out = 256)),
    border    = "black",
    xlab      = '',
    ylab      = '',
    main      = '',
    breaks    = seq(-2, 1, length.out = 257),
    key       = NULL,
    axis.col  = NULL,
    axis.row  = NULL,
    asp       = 1)

# Speichern
dev.copy2pdf(
    file      = "Abbildungen/designmatrix_zweistichproben-t-test.pdf",
    width     = 10,
    height    = 10)
```

\vspace{2mm}
```{r, echo = F, out.width = "60%"}
knitr::include_graphics("Abbildungen/designmatrix_zweistichproben-t-test.pdf")
```


<!-- Datensimulation -->
# Modellformulierung

\normalsize
Datensimulation (vgl. Einheit (5) in *Allgemeines Lineares Modell*)

\vspace{4mm}

\footnotesize
\setstretch{1.2}

```{r, echo = T}
# Modellformulierung
library(MASS)                                # multivariate Normalverteilung
n_1    = 10                                  # Anzahl von Datenpunkten Gruppe 1
n_2    = 10                                  # Anzahl von Datenpunkten Gruppe 2
n      = n_1 + n_2                           # Gesamtanzahl der Datenpunkte
p      = 2                                   # Anzahl von Betaparametern
X      = matrix(c(rep(1,n_1), rep(0,n_1),    # n x p Designmatrix
                  rep(0,n_2), rep(1,n_2)),
                nrow  = n)
I_n    = diag(n)                             # n x n Einheitsmatrix
beta   = matrix(c(1,2), nrow = p)            # wahre,  aber unbekannte  Betaparameter
sigsqr = 14                                  # wahrer, aber unbekannter Varianzparameter

# Datenrealisierung
y      = mvrnorm(1, X %*% beta, sigsqr*I_n)  # eine Realisierung des n-dimensionalen ZVs y
print(y)
```


<!-- Abschnitt 3.3: Modellschätzung -->
# Zweistichproben-T-Tests

\large
\setstretch{2.5}
\vfill

Anwendungsszenario

Modellformulierung

**Modellschätzung**

Modellevaluation

Anwendung/Praxis

\vfill


<!-- Theorem: Parameterschätzung im Zweistichproben-T-Test-Modell -->
# Modellschätzung

\footnotesize
\begin{theorem}[Parameterschätzung im Zweistichproben-T-Test-Modell]

\normalfont
\justifying
Gegeben sei die Designmatrixform des Zweistichproben-T-Test-Modells. Dann ergeben sich für den Betaparameterschätzer
\begin{equation}
\hat{\beta}
= \begin{pmatrix}
\frac{1}{n_1}\sum_{j=1}^{n_1} y_{1j} \\
\frac{1}{n_2}\sum_{j=1}^{n_2} y_{2j}
\end{pmatrix}
=: \begin{pmatrix}
\bar{y}_1 \\
\bar{y}_2
\end{pmatrix}
\end{equation}

und für den Varianzparameterschätzer
\begin{equation}
\hat{\sigma}^2
= \frac{\sum_{j=1}^{n_1} (y_{1j} - \bar{y}_1)^2 + \sum_{j=1}^{n_2} (y_{2j} - \bar{y}_2)^2}{n_1+n_2-2}
=: s_{12}^2
\end{equation}

\end{theorem}

Bemerkungen

* \justifying $\bar{y}_1$ und $\bar{y}_2$ bezeichnen die gruppenspezifischen Stichprobenmittel.
* $s_{12}^2$ wird als *gebündelte Stichprobenvarianz* oder *pooled sample variance* bezeichnet.
* Für einen Datensatz $y = (y_1,y_2)$ gilt im Allgemeinen, dass $s_y^2 \neq s_{12}^2$. Die gebündelte Stichprobenvarianz und die Stichprobenvarianz eines zusammengefügten ("konkatenierten") Datensatzes sind im Allgemeinen also nicht identisch. Wir wollen das Konzept der gebündelten Stichprobenvarianz hier aber nicht weiter vertiefen.


<!-- Beweis -->
# Modellschätzung

\footnotesize
\underline{Beweis}

Für $i = 1,2$ sei $y_i := (y_{i1},...,y_{in_i})^\mathrm{T}$. Dann ergibt sich für den Betaparameterschätzer
\begin{align}
\begin{split}
\hat{\beta}
& = (X^\mathrm{T}X)^{-1}X^\mathrm{T}y \\
& = \left(
\begin{pmatrix} 1_{n_1} & 0_{n_2} \\ 0_{n_1} & 1_{n_2} \end{pmatrix}
\begin{pmatrix} 1_{n_1} & 0_{n_1} \\ 0_{n_2} & 1_{n_2} \end{pmatrix}
\right)^{-1}
\begin{pmatrix} 1_{n_1} & 0_{n_2} \\ 0_{n_1} & 1_{n_2} \end{pmatrix}
\begin{pmatrix} y_1 \\ y_2 \end{pmatrix} \\
& =
\begin{pmatrix}
n_1 & 0	  \\
0 	& n_2 \\
\end{pmatrix}^{-1}
\begin{pmatrix}
\sum_{j=1}^{n_1} y_{1j} \\
\sum_{j=1}^{n_2} y_{2j} \\
\end{pmatrix} \\
& = \begin{pmatrix}
1/n_1 & 0     \\
0 	  & 1/n_2 \\
\end{pmatrix}
\begin{pmatrix}
\sum_{j=1}^{n_1} y_{1j} \\
\sum_{j=1}^{n_2} y_{2j} \\
\end{pmatrix} \\
& =\begin{pmatrix}
\frac{1}{n_1}\sum_{j=1}^{n_1} y_{1j} \\
\frac{1}{n_2}\sum_{j=1}^{n_2} y_{2j} \\
\end{pmatrix} \\
& =: \begin{pmatrix} \bar{y}_1 \\ \bar{y}_2 \end{pmatrix}.
\end{split}
\end{align}


<!-- Beweis -->
# Modellschätzung

\footnotesize
\underline{Beweis (fortgeführt)}

Gleichsam ergibt sich für den Varianzparameterschätzer mit $n = n_1 + n_2$ und $p = 2$
\begin{align}
\begin{split}
\hat{\sigma}^{2}
& =
\frac{(y-X\hat{\beta})^\mathrm{T}(y - X\hat{\beta})}{n - p} \\
& =
\frac{1}{n_1+n_2-2}
\left(
\begin{pmatrix}
y_1 \\
y_2
\end{pmatrix} -
\begin{pmatrix}
1_{n_1} & 0_{n_1} \\
0_{n_2} & 1_{n_2}
\end{pmatrix}
\begin{pmatrix}
\bar{y}_{1} \\
\bar{y}_{2} \\
\end{pmatrix}
\right)^\mathrm{T}
\left(
\begin{pmatrix}
y_1 \\
y_2
\end{pmatrix} -
\begin{pmatrix}
1_{n_1} & 0_{n_1} \\
0_{n_2} & 1_{n_2}
\end{pmatrix}
\begin{pmatrix}
\bar{y}_{1} \\
\bar{y}_{2} \\
\end{pmatrix} \right) \\
& =\frac{1}{n_1+n_2-2}
\begin{pmatrix}
y_{11}-\bar{y}_{1}   \\
\vdots               \\
y_{1n_1}-\bar{y}_{1} \\
y_{21}-\bar{y}_{2}   \\
\vdots               \\
y_{2n_2}-\bar{y}_{2} \\
\end{pmatrix}^\mathrm{T}
\begin{pmatrix}
y_{11}-\bar{y}_{1}   \\
\vdots               \\
y_{1n_1}-\bar{y}_{1} \\
y_{21}-\bar{y}_{2}   \\
\vdots               \\
y_{2n_2}-\bar{y}_{2} \\
\end{pmatrix} \\
& = \frac{\sum_{j=1}^{n_1} (y_{1j}-\bar{y}_{1})^{2} +
          \sum_{j=1}^{n_2} (y_{2j}-\bar{y}_{2})^{2}}
         {n_1+n_2-2} \\
& =: s_{12}^2.
\end{split}
\end{align}
$\hfill\Box$


<!-- Modellschätzung -->
# Modellschätzung

\tiny
\setstretch{1}
```{r, echo = T}
# Daten einlesen
fname      = "Daten/T-Tests_Daten.csv"                            # Dateiname
D          = read.table(fname, sep = ",", header = TRUE)          # Dataframe
y_1        = D$dBDI[D$Setting == "F2F"]                           # BDI-Differenzwerte in der F2F-Gruppe
y_2        = D$dBDI[D$Setting == "ONL"]                           # BDI-Differenzwerte in der ONL-Gruppe

# Modellformulierung
n_1        = length(y_1)                                          # Anzahl Datenpunkte Gruppe 1 (F2F)
n_2        = length(y_1)                                          # Anzahl Datenpunkte Gruppe 2 (ONL)
n          = n_1 + n_2                                            # Gesamtanzahl Datenpunkte
p          = 2                                                    # Anzahl Betaparameter
y          = matrix(c(y_1, y_2), nrow = n)                        # Datenvektor
X          = matrix(c(rep(1,n_1), rep(0,n_1),                     # Designmatrix
                      rep(0,n_2), rep(1,n_2)),
                    nrow  = n)

# Modellschätzung
beta_hat   = solve(t(X) %*% X) %*% t(X) %*% y                     # Betaparameterschätzer
eps_hat    = y - X %*% beta_hat                                   # Residuenvektor
sigsqr_hat = (t(eps_hat) %*% eps_hat) /(n-p)                      # Varianzparameterschätzer
s_sqr_12   = ((n_1-1)*var(y_1) + (n_2-1)*var(y_2))/(n_1+n_2-2)    # gebündelte Stichprobenvarianz

# Ausgabe
cat(  "hat{beta}          : ", round(beta_hat,    digits = 3),    # Betaparameterschätzer
    "\nbar{y_1}, bar{y_2} : ", round(c(mean(y_1), mean(y_2)),     # Stichprobenmittel
                                                  digits = 3),    
    "\nhat{sigsqr}        : ", round(sigsqr_hat,  digits = 3),    # Varianzparameterschätzer
    "\ns_12^2             : ", round(s_sqr_12,    digits = 3),    # gebündelte Stichprobenvarianz
    "\ns_y^2              : ", round(var(y),      digits = 3))    # Stichprobenvarianz des konkatenierten Datensatzes
```


<!-- Abschnitt 3.4: Modellevaluation -->
# Zweistichproben-T-Tests

\large
\setstretch{2.5}
\vfill

Anwendungsszenario

Modellformulierung

Modellschätzung

**Modellevaluation**

Anwendung/Praxis

\vfill


<!-- Überblick -->
# Modellevaluation

\small
\setstretch{1.5}
Überblick

\footnotesize
* Wir gruppieren frequentistische Konfidenzintervalle und Hypothesentests unter Modellevaluation.
* Wir verzichten an dieser Stelle auf eine Diskussion von Konfidenzintervallen.
* In der Praxis zielt die Evaluation von Zweistichproben-T-Tests-Designs meist auf einen Hypothesentest.
* Die Theorie der Zweistichproben-T-Tests ist umfangreich.
* Ein gutes Verständnis von Hypothesentests wird im Folgenden vorausgesetzt.
* (vgl. Einheit (11) in *Wahrscheinlichkeitstheorie und Frequentistische Inferenz*)

Im Zweistichproben-T-Test ALM Design ergeben sich folgende Hypothesenszenarien:
\vspace{-2mm}

* $H_0:\mu_1 - \mu_2  =  \mu_0$ und $H_1: \mu_1 - \mu_2 \neq \mu_0$
* $H_0:\mu_1 - \mu_2 \le \mu_0$ und $H_1: \mu_1 - \mu_2 >    \mu_0$
* $H_0:\mu_1 - \mu_2 \ge \mu_0$ und $H_1: \mu_1 - \mu_2 <    \mu_0$

Wir betrachten hier exemplarisch nur $H_0:\mu_1 - \mu_2 = \mu_0$ und $H_1: \mu_1 - \mu_2 \neq \mu_0$.

Für $\mu_0 := 0$ gelten dabei insbesondere:
\vspace{-2mm}

* $H_0:\mu_1 - \mu_2 =    0 \Leftrightarrow H_0: \mu_1 =    \mu_2$
* $H_1:\mu_1 - \mu_2 \neq 0 \Leftrightarrow H_1: \mu_1 \neq \mu_2$


<!-- Modellevaluation -->
# Modellevaluation

\small
\setstretch{2}
\textcolor{darkblue}{Gliederung} (vgl. Einheit (11), Folie 29 in \textit{Wahrscheinlichkeitstheorie und Frequentistische Inferenz})

(1) Statistisches Modell $\checkmark$

(2) Testhypothesen $\checkmark$

(3) Teststatistik

(4) Test

(5) Analyse der Testgütefunktion

(6) Testumfangkontrolle

(7) p-Wert

(8) Analyse der Powerfunktion


<!-- Theorem: T-Teststatistik des Zweistichproben-T-Tests -->
# Modellevaluation (3) Teststatistik

\footnotesize
\begin{theorem}[T-Teststatistik des Zweistichproben-T-Tests]

\justifying
\normalfont
Gegeben sei die Designmatrixform des Zweistichproben-T-Test-Modells. Dann ergibt sich für die T-Teststatistik mit
\begin{equation}
c := (1,-1)^\mathrm{T}
\quad \mbox{und} \quad
c^\mathrm{T}\beta_0 =: \mu_0,
\end{equation}

dass
\begin{equation}
T = \sqrt{\frac{n_1n_2}{n_1+n_2}}\left(\frac{\bar{y}_1-\bar{y}_2 - \mu_0}{s_{12}}\right)
\end{equation}

und es gilt
\begin{equation}
T \sim t(\delta, n_1 + n_2 - 2)
\quad \mbox{mit} \quad
\delta = \sqrt{\frac{n_1n_2}{n_1+n_2}}\left(\frac{\mu_1-\mu_2-\mu_0}{\sigma}\right).
\end{equation}

\end{theorem}

Bemerkungen

* Das Theorem basiert auf der T-Statistik im Rahmen des ALM.
* Wir erinnern an das verwandte populäre und von der Stichprobengröße unabhängige Effekstärke-Maß *Cohen's* $d$ bei Zweistichproben-T-Test-Designs,
\begin{equation}
d := \frac{\bar{y}_1-\bar{y}_2}{s_{12}}.
\end{equation}
* Offenbar gilt für dieses *Cohen's* $d$, dass mit $\mu_0 := 0$
\begin{equation}
T = \sqrt{\frac{n_1n_2}{n_1+n_2}}d
\quad \Leftrightarrow \quad
d = T/\sqrt{\frac{n_1n_2}{n_1+n_2}}.
\end{equation}


<!-- Beweis -->
# Modellevaluation (3) Teststatistik

\footnotesize
\underline{Beweis}

Mit dem Theorem zur Verteilung der T-Statistik (siehe Einheit (7) in *Allgemeines Lineares Modell*) gilt zunächst für die Zähler von $T$ und $\delta$, dass
\begin{equation}
c^\mathrm{T}\hat{\beta} - c^\mathrm{T}\beta_0
= \begin{pmatrix} 1         &  -1        \end{pmatrix}
  \begin{pmatrix} \bar{y}_1 \\ \bar{y}_2 \end{pmatrix} -
  \mu_0
= \bar{y}_1 - \bar{y}_2 - \mu_0
\end{equation}

und
\begin{equation}
c^\mathrm{T}\beta - c^\mathrm{T}\beta_0
= \begin{pmatrix} 1     &  -1     \end{pmatrix}
  \begin{pmatrix} \mu_1 \\ \mu_2  \end{pmatrix} -
  \mu_0
= \mu_1 - \mu_2 - \mu_0 \; .
\end{equation}

Weiterhin gilt für die Nenner von  $T$ und $\delta$, dass
\begin{equation}
c^\mathrm{T}(X^\mathrm{T}X)^{-1}c =
\begin{pmatrix} 1 & -1 \end{pmatrix}
\begin{pmatrix}
1/n_1 & 0     \\
0 	  & 1/n_2 \\
\end{pmatrix}
\begin{pmatrix} 1 \\ -1 \end{pmatrix}
=
\begin{pmatrix} \frac{1}{n_1} &  -\frac{1}{n_2} \end{pmatrix}
\begin{pmatrix} 1             \\ -1             \end{pmatrix}
= \frac{1}{n_1} + \frac{1}{n_2} \; .
\end{equation}

Außerdem gilt
\begin{equation}
  \left(\frac{1}{n_1} + \frac{1}{n_2}\right)^{-\frac{1}{2}}
= \left(\frac{n_2}{n_1n_2} + \frac{n_1}{n_1n_2}\right)^{-\frac{1}{2}}
= \left(\frac{n_1 + n_2}{n_1n_2}\right)^{-\frac{1}{2}}
= \left(\frac{n_1n_2}{n_1+n_2}\right)^{\frac{1}{2}} \; .
\end{equation}

Zusammengenommen folgt dann, dass
\begin{equation}
T = \sqrt{\frac{n_1n_2}{n_1+n_2}}\left(\frac{\bar{y}_1-\bar{y}_2 - \mu_0}{s_{12}}\right)
\mbox{ und }
\delta = \sqrt{\frac{n_1n_2}{n_1+n_2}}\left(\frac{\mu_1-\mu_2-\mu_0}{\sigma}\right) \; .
\end{equation}
$\hfill\Box$


<!-- Definition: Zweiseitiger Zweistichproben-T-Test -->
# Modellevaluation (4) Test
<!-- \Leftrightarrow \Theta_0 := \{(\mu_1,\mu_2) \in \mathbb{R}^2|\mu_1 - \mu_2 = \mu_0\} -->
<!-- \Leftrightarrow \Theta_1 := \{(\mu_1,\mu_2) \in \mathbb{R}^2|\mu_1 - \mu_2 \neq \mu_0\} -->

\footnotesize
\begin{definition}[Zweiseitiger Zweistichproben-T-Test]

\justifying
Gegeben sei das Zweistichproben-T-Test-Modell. Für ein $\mu_0 \in \mathbb{R}$ seien die Nullhypothese und die Alternativhypothese gegeben durch
\begin{equation}
H_0 : \mu_1 - \mu_2 = \mu_0
\end{equation}
und
\begin{equation}
H_1 : \mu_1 - \mu_2 \neq \mu_0 \; .
\end{equation}

Weiterhin sei die T-Teststatistik definiert durch
\begin{equation}
T := \sqrt{\frac{n_1n_2}{n_1+n_2}}\left(\frac{\bar{y}_1-\bar{y}_2 - \mu_0}{s_{12}}\right)
\end{equation}

Dann ist der \textit{zweiseitige Zweistichproben-T-Test} definiert als der kritische-Wert-basierte Test
\begin{equation}
\phi(y) := 1_{\{|T| \ge k\}} =
{\begin{cases}
1 & |T| \ge k \\
0 & |T|  <  k
\end{cases}} \; .
\end{equation}

\end{definition}

Bemerkungen

* Ausführlicher handelt es sich um den *zweiseitigen Zweistichproben-T-Test mit ungerichteter Hypothese*.


<!-- Theorem: Testgütefunktion -->
# Modellevaluation (5) Analyse der Testgütefunktion

\footnotesize
\begin{theorem}[Testgütefunktion]

\justifying
\normalfont
Es sei $\phi$ der im obigen Modell formulierte Zweistichproben-T-Test. Dann ist die Testgütefunktion von $\phi$ gegeben durch
\begin{align}
\begin{split}
q_{\phi} : \mathbb{R}^2 \to [0,1],
(\mu_1, \mu_2) \mapsto q_{\phi}(\mu_1, \mu_2)
:= 1 &- \psi(k;\delta,n_1+n_2-2) \\
     &+ \psi(-k;\delta,n_1+n_2-2) \; ,
\end{split}
\end{align}

wobei $\psi(\cdot; \delta, n_1+n_2-2)$ die KVF der nichtzentralen $t$-Verteilung mit Nichtzentralitätsparameter
\begin{equation}
\delta = \sqrt{\frac{n_1n_2}{n_1+n_2}}\left(\frac{\mu_1-\mu_2-\mu_0}{\sigma}\right)
\end{equation}

und Freiheitsgradparameter $n_1+n_2-2$ bezeichnet.

\end{theorem}

Bemerkungen

* $q_{\phi}$ ist eine bivariate reellwertige Funktion.
* $q_{\phi}$ kann alternativ als univariate reellwertige Funktion von $\Delta := \mu_1 - \mu_2$ konzipiert werden.
* Im Vergleich zum Einstichprobenszenario gelten
\begin{equation}
n-1 \hookrightarrow n_1+n_2-2, \quad\quad
\sqrt{n} \hookrightarrow \sqrt{\frac{n_1n_2}{n_1 + n_2}}, \quad\quad
\mu - \mu_0 \hookrightarrow \mu_1 - \mu_2 -\mu_0
\end{equation}
* Wir verzichten auf einen Beweis. Für einen Beweisansatz, siehe @degroot2012, Seite 591.


<!-- Analyse der Testgütefunktion -->
# Modellevaluation (5) Analyse der Testgütefunktion

\small
\center
Testgütefunktion $q_\phi$ für $\sigma^2 = 9, \mu_0 = 0, n_1 = 12, n_2 = 12$ und $k = 1,2,3$.
\vspace{2mm}
\begin{equation*}
q_{\phi}\mu_1,\mu_2) = \mathbb{P}_{\mu_1,\mu_2}(\phi = 1)
\end{equation*}

```{r, eval = F, echo = F}
# Abbildungsparameter
graphics.off()
dev.new()
par(
    family      = "sans",
    mfcol       = c(1,3),
    pty         = "m",
    bty         = "l",
    lwd         = 1,
    las         = 1,
    xaxs        = "i",
    yaxs        = "i",
    font.main   = 1,
    cex         = .4,
    cex.main    = 2)

# Visualisierung
k_all        = c(1,2,3)                                             # kritische Werte
n_1         = 12                                                    # Stichprobengröße n_1
n_2         = 12                                                    # Stichprobengröße n_2
sigsqr      = 9                                                     # Varianzparameter
mu_min      = -5                                                    # Minimum   \mu_1,\mu_2
mu_max      = 5                                                     # Minimum   \mu_1,\mu_2
mu_res      = 2e1                                                   # Auflösung \mu_1,\mu_2
mu_1        = seq(mu_min, mu_max, len = mu_res)                     # \mu_1
mu_2        = seq(mu_min, mu_max, len = mu_res)                     # \mu_2

# Iterationen über kritische Werte
for(k in k_all){
    q_phi       = matrix(rep(NaN, mu_res*mu_res), nrow = mu_res)    # q_\phi Array
    for(i in seq_along(mu_1)){                                      # \mu_1 Iterationen
        for(j in seq_along(mu_2)){                                  # \mu_2 Iterationen
            d           = (mu_1[i] - mu_2[j])/sqrt(sigsqr)          # Nichtzentralitätsparameter \delta
            df          = n_1 + n_2 - 2                             # Freiheitsgradparameter n_1+n_2-2
            q_phi[i,j]  = 1-pt(k,df,d)+pt(-k,df,d)                  # q_\phi
        }
    }
    persp(mu_1, mu_2, q_phi,
        d           = 1,
        col         = "gray90",
        theta       = 20,
        phi         = 30,
        lwd         = .5,
        scale       = T,
        ticktype    = "detailed",
        r           = 1.5,
        zlim        = c(0,1),
        main        = paste("k =", k))
}

# Speichern
dev.copy2pdf(
    file    = "Abbildungen/t_test_zweistichproben_q_phi.pdf",
    width   = 6,
    height  = 2)
```

```{r, echo = F, out.width = "100%"}
knitr::include_graphics("Abbildungen/t_test_zweistichproben_q_phi.pdf")
```


<!-- Theorem: Testumfangkontrolle -->
# Modellevaluation (6) Testumfangkontrolle

\small
\begin{theorem}[Testumfangkontrolle]

\justifying
\normalfont
$\phi$ sei der im obigen Testszenario definierte Test. Dann ist $\phi$ ein Level-$\alpha_0$-Test mit Testumfang $\alpha_0$, wenn der kritische Wert definiert ist durch
\begin{equation}
k_{\alpha_0} := \psi^{-1}\left(1 - \frac{\alpha_0}{2}; n_1 + n_2 - 2 \right),
\end{equation}

wobei $\psi^{-1}(\cdot; n_1+n_2-2)$ die inverse KVF der $t$-Verteilung mit $n_1+n_2-2$ Freiheitsgraden ist.

\end{theorem}

Bemerkungen

* Das Resultat folgt in Analogie zum Einstichproben-T-Test.
* Im Vergleich zum Einstichproben-T-Testfall gilt lediglich
\begin{equation}
n - 1 \hookrightarrow n_1 + n_2 - 2.
\end{equation}


<!-- Praktisches Vorgehen -->
# Modellevaluation (6) Testumfangkontrolle

Praktisches Vorgehen
\footnotesize

\begin{itemize}
\justifying

\item Man nimmt an, dass die Daten zweier Gruppen $y_{11},...,y_{1n_1}$ und $y_{21},...,y_{2n_2}$ Realisationen von $y_{1j} \sim N(\mu_1,\sigma^2) \mbox{ u.i.v. für } j = 1,...,n_1$ und $y_{2j} \sim N(\mu_2,\sigma^2) \mbox{ u.i.v. für } j = 1,...,n_2$ mit unbekannten Parametern $\mu_1,\mu_2$ und $\sigma^2$ sind.

\item Man möchte entscheiden, ob eher $H_0: \mu_1 - \mu_2 = \mu_0$ oder $H_1: \mu_1 - \mu_2 \neq \mu_0$ zutrifft.

\item Man wählt ein Signifikanzniveau $\alpha_0$ und bestimmt den zugehörigen Freiheitsgradparameter-abhängigen kritischen Wert $k_{\alpha_0}$. Zum Beispiel gilt bei Wahl von $\alpha_0 := 0.05$ und $n_1 = 12, n_2 = 12$, dass $k_{0.05}=\psi^{-1}(1-0.05/2; 12+12-2) \approx 2.07$ ist.

\item Anhand von $n_1,n_2,\bar{y}_1,\bar{y}_2$ und der gebündelten Stichprobenstandardabweichung $s_{12}$ berechnet man die Realisierung der Zweistichproben-T-Teststatistik
\begin{equation}
t := \sqrt{\frac{n_1n_2}{n_1+n_2}}\left(\frac{\bar{y}_1-\bar{y}_2 - \mu_0}{s_{12}}\right)
\end{equation}

\item Wenn $t$ größer-gleich $k_{\alpha_0}$ ist oder wenn $t$ kleiner-gleich $-k_{\alpha_0}$ ist, lehnt man die Nullhypothese ab, andernfalls lehnt man sie nicht ab.

\item Die oben entwickelte Theorie des Zweistichproben-T-Tests garantiert dann, dass man in höchstens $\alpha_0 \cdot 100$ von $100$ Fällen die Nullhypothese fälschlicherweise ablehnt.

\end{itemize}


<!-- Bestimmung des p-Werts -->
# Modellevaluation (7) p-Wert

Bestimmung des p-Wertes
\footnotesize

* \justifying \small Per Definition ist der p-Wert das kleinste Signifikanzlevel $\alpha_0$, bei welchem man die Nullhypothese basierend auf einem vorliegendem Wert der Teststatistik ablehnen würde.

* Bei $T = t$ würde $H_0$ für jedes $\alpha_0$ mit $|t|\ge\psi^{-1}(1-\alpha_0/2; n_1 + n_2-2)$ abgelehnt werden. Für diese $\alpha_0$ gilt, wie bereits mehrfach gezeigt,
\begin{equation}
\alpha_0 \ge 2 \mathbb{P}(T \ge |t|).
\end{equation}

* Das kleinste $\alpha_0 \in [0,1]$ mit $\alpha_0 \ge 2 \mathbb{P}(T \ge |t|)$ ist dann $\alpha_0 = 2 \mathbb{P}(T \ge |t|)$, also folgt
\begin{equation}
\mbox{p-Wert} =  2 \mathbb{P}(T \ge |t|) = 2(1 - \psi(|t|;n_1 + n_2 - 2)).
\end{equation}

* Im Vergleich zum Einstichprobenfall gilt lediglich $n-1 \hookrightarrow n_1+n_2-2$.


<!-- Analyse der Powerfunktion -->
# Modellevaluation (8) Analyse der Powerfunktion

\small
Wir betrachten die Testgütefunktion
\begin{align}
\begin{split}
q_{\phi} : \mathbb{R}^2 \to [0,1],
(\mu_1, \mu_2) \mapsto q_{\phi}(\mu_1, \mu_2)
:= 1 &- \psi(k;\delta,n_1+n_2-2) \\
     &+ \psi(-k;\delta,n_1+n_2-2)
\end{split}
\end{align}

als Funktion des Nichtzentralitätsparameters $\delta := \sqrt{\frac{n_1n_2}{n_1+n_2}}\left(\frac{\mu_1-\mu_2-\mu_0}{\sigma}\right)$ und der Summe der Stichprobenumfänge $n := n_1 + n_2$ bei kontrolliertem Testumfang, also für $k_{\alpha_0} := \psi^{-1}(1-\alpha_0/2;n-2)$ mit festem $\alpha_0$.

Es ergibt sich die multivariate reellwertige Funktion
\begin{equation}
\pi : \mathbb{R} \times \mathbb{N} \to [0,1],
(\delta,n) \mapsto \pi(\delta,n) := 1-\psi(k_{\alpha_0};\delta,n-2)+\psi(-k_{\alpha_0}; \delta,n-2) \; .
\end{equation}

Bei festgelegten $\alpha_0$ hängt die Powerfunktion des zweiseitigen T-Tests mit einfacher Nullhypothese also vom unbekannten Wert $\delta$ und von der Summe der Stichprobengrößen $n$ ab. De facto handelt es sich also um die gleiche Powerfunktion wie beim zweiseitigen Einstichproben-T-Test mit dem einzigen Unterschied, dass für den Freiheitsgradparameter $n-2$ anstelle von $n-1$ gilt. Wir verzichten auf eine erneute Visualisierung.


<!-- Praktisches Vorgehen -->
# Modellevaluation (8) Analyse der Powerfunktion

Praktisches Vorgehen
\small

Mit größerem $n = n_1 + n_2$ steigt die Powerfunktion des Tests an:

* Ein großer Stichprobenumfang ist besser als ein kleiner Stichprobenumfang.

* Kosten für die Erhöhung des Stichprobenumfangs werden aber nicht berücksichtigt.

* \justifying Ungleichgewichte zwischen $n_1$ und $n_2$ werden durch die Tatsache ausglichen, dass Datenpunkte einer Stichprobe auch zur Varianzschätzung in der anderen Stichprobe beitragen, da eine identische Varianz vorausgesetzt wurde.

\vspace{1mm}

Die Powerfunktion hängt vom wahren, aber unbekannten, Wert $\delta = \sqrt{\frac{n_1n_2}{n_1+n_2}}\left(\frac{\mu_1-\mu_2-\mu_0}{\sigma}\right)$ ab.

$\Rightarrow$ Wenn man $\delta$ schon kennen würde, würde man den Test nicht durchführen.

\vspace{4mm}

Generell wird folgendes Vorgehen favorisiert:

* Man legt das Signifikanzniveau $\alpha_0$ fest und evaluiert die Powerfunktion.

* Man wählt einen Mindestparameterwert $\delta^*$, den man mit $\pi(\delta,n) = b$ detektieren möchte.

* Ein konventioneller Wert ist $b= 0.8$.

* Man liest die für $\pi(\delta = \delta^*,n) = b$ nötige Stichprobengröße $n$ ab.


<!-- Visualisierung -->
# Modellevaluation (8) Analyse der Powerfunktion

Praktisches Vorgehen

\vspace{4mm}
```{r, echo = F, eval = F}
# Szenariospezifikation
sigma     = 1                                                       # bekanntes \sigma
mu_0      = 0                                                       # einfache Nullhypothese
n_min     = 3                                                       # n = n_1 + n_2 Minimum
n_max     = 20                                                      # n = n_1 + n_2 Maximum
n_res     = 1e2                                                     # n Auflösung
n         = seq(n_min,n_max, len = n_res)                           # n Raum
alpha_0   = 0.05                                                    # Signifikanzniveau

# Poweranalyse
d_fix     = 3                                                       # fester Nichtzentralitätsparameter
k_alpha_0 = qt(1-alpha_0/2,n-2)                                     # kritische Werte
pi_n      = 1-pt(k_alpha_0,n-2, d_fix)+pt(-k_alpha_0,n-2,d_fix)     # Powerfunktion
beta      = 0.8                                                     # gewünschter Powerfunktionswert
i         = 1                                                       # Indexinitialisierung
n_min     = NaN                                                     # Initialisierung von minimalem n
while(pi_n[i] < beta){                                              # Solange \pi(\delta*,n) < \beta
    n_min = n[i]                                                    # Aufnahme des minimal nötigen n
    i     = i + 1                                                   # und Erhöhung des Indexes
}
cat("minimal nötiges n =", ceiling(n_min))                          # Ausgabe
```

```{r, echo = F, eval = F}
# Visualisierung
library(latex2exp)
par(
    family      = "sans",
    mfcol       = c(1,1),
    pty         = "m",
    bty         = "l",
    lwd         = 1,
    las         = 1,
    xaxs        = "i",
    yaxs        = "i",
    font.main   = 1,
    cex         = 1.2,
    cex.main    = 1.2)
plot(n, pi_n,
    type        = "l",
    lwd         = 2,
    ylab        = " ",
    ylim        = c(0,1),
    xlab        = TeX("$n$"),
    main        = TeX("$\\pi(\\delta = 3,n)\\, für \\,\\alpha_0 = 0.05"))
lines(3, beta,
    type        = "p",
    pch         = 16,
    xpd         = TRUE)
lines(n_min, 0,
    type        = "p",
    pch         = 16,
    xpd         = TRUE)
arrows(
    x0          = min(n),
    y0          = beta,
    x1          = n_min,
    y1          = beta,
    col         = "darkorange",
    angle       = 20,
    length      = .1)
arrows(
    x0          = n_min,
    y0          = beta,
    x1          = n_min,
    y1          = 0,
    col         = "darkorange",
    angle       = 20,
    length      = .1)
text(3.5, 0.85, TeX("$b$"),      xpd = TRUE, cex = 1.2)
text(18 , 0.05, TeX("$n_{opt}"), xpd = TRUE, cex = 1.2)

# Speichern
dev.copy2pdf(
    file        = "Abbildungen/t_test_zweistichproben_umfang.pdf",
    width       = 7,
    height      = 5)
```

```{r, echo = F, out.width = "80%"}
knitr::include_graphics("Abbildungen/t_test_zweistichproben_umfang.pdf")
```


<!-- Abschnitt 3.5: Anwendung/Praxis -->
# Zweistichproben-T-Tests

\large
\setstretch{2.5}
\vfill

Anwendungsszenario

Modellformulierung

Modellschätzung

Modellevaluation

**Anwendung/Praxis**

\vfill


<!-- Anwendungsszenario -->
# Anwendung/Praxis

\small
\vspace{2mm}
\textcolor{darkblue}{Daten einlesen:} $j = 1,...15$ für jede Gruppe

\tiny
\setstretch{0.6}

\vspace{1mm}
```{r, echo = T}
fname       = "Daten/T-Tests_Daten.csv"
D           = read.table(fname, sep = ",", header = TRUE)
```

\vspace{-1mm}
```{r, echo = F}
knitr::kable(D[c(1:15, 41:55),],
             align = "ccc",
             "pipe")
```


<!-- Anwendungsszenario -->
# Anwendung/Praxis

\vspace{1mm}

\tiny
\setstretch{0.5}

```{r, echo = T, eval = F}
# Histogrammparameter
h           = 1                                 # gewünschte Klassenbreite
b_0         = min(D$dBDI)                       # b_0
b_k         = max(D$dBDI)                       # b_0
k           = ceiling((b_k - b_0)/h)            # Anzahl der Klassen
b           = seq(b_0, b_k, by = h)             # Klassen [b_0, ..., b_k]
ylimits     = c(0,.2)                           # y-Achsenlimits
xlimits     = c(-2,14)                          # x-Achsenlimits
therapie    = c("F2F" , "ONL")                  # Therapiebedingungen
labs        = c("Face-to-Face", "Online")       # Abbildungslabel

# Abbildungsparameter
par(                                            # für Details siehe ?par
    mfcol       = c(1,2),                       # 1 x 2 Panelstruktur
    family      = "sans",                       # Serif-freier Fonttyp
    pty         = "m",                          # maximale Abbildungsregion
    bty         = "l",                          # L-förmige Box
    las         = 1,                            # horizontale Achsenbeschriftung
    xaxs        = "i",                          # x-Achse bei y = 0
    yaxs        = "i",                          # y-Achse bei x = 0
    font.main   = 1,                            # Titel nicht fett
    cex         = 1,                            # Textvergrößerungsfaktor
    cex.main    = 1)                            # Titeltextvergrößerungsfaktor

# Iteration über Therapiebedingungen
for(i in 1:2){
    hist(
    D$dBDI[D$Setting == therapie[i]],           # Delta-BDI-Werte von Therapiebedingung i
    breaks    = b,                              # Histogrammklassen
    freq      = F,                              # normierte relative Häufigkeit
    xlim      = xlimits,                        # x-Achsenlimits
    ylim      = ylimits,                        # y-Achsenlimits
    xlab      = TeX("$\\Delta BDI$"),           # x-Achsenbeschriftung
    ylab      = "geschätzte Wahrscheinlichkeit",# y-Achsenbeschriftung
    main      = labs[i])                        # Titelbeschriftung
}

# Speichern
dev.copy2pdf(
    file      = "Abbildungen/F2F_ONL_histogramme.pdf",
    width     = 8,
    height    = 4)
```


<!-- Anwendungsszenario -->
# Anwendung/Praxis

\vspace{2mm}

\tiny
\setstretch{1}

```{r, echo = T, eval = T}
# Initialisierung eines Dataframes
tp            = c("F2F", "ONL")                     # Therapiebedingungen
ntp           = length(tp)                          # Anzahl Therapiebedingungen
S             = data.frame(                         # Dataframeerzeugung
                    n         = rep(NaN,ntp),       # Stichprobengrößen
                    Max       = rep(NaN,ntp),       # Maxima
                    Min       = rep(NaN,ntp),       # Minima
                    Median    = rep(NaN,ntp),       # Mediane
                    Mean      = rep(NaN,ntp),       # Mittelwerte
                    Var       = rep(NaN,ntp),       # Varianzen
                    Std       = rep(NaN,ntp),       # Standardabweichungen
                    row.names = tp)                 # Therapiebedingungen

# Iterationen über Therapiebedingungen
for(i in 1:ntp){
    data        = D$dBDI[D$Setting == tp[i]]        # Daten
    S$n[i]      = length(data)                      # Stichprobengröße
    S$Max[i]    = max(data)                         # Maxima
    S$Min[i]    = min(data)                         # Minima
    S$Median[i] = median(data)                      # Mediane
    S$Mean[i]   = mean(data)                        # Mittelwerte
    S$Var[i]    = var(data)                         # Varianzen
    S$Std[i]    = sd(data)                          # Standardabweichungen
}
```


<!-- Anwendungsszenario -->
# Anwendung/Praxis

\vspace{2mm}

\small
\textcolor{darkblue}{Deskriptive Statistiken der PostBDI-PreBDI-Differenzen bei Face-to-Face- und Online-Therapie}

\vspace{1mm}
```{r, echo = F, out.width = "100%"}
knitr::include_graphics("Abbildungen/F2F_ONL_histogramme.pdf")
```

\footnotesize
\setstretch{1}
```{r, echo = T}
# Ausgabe
print.AsIs(S)
```


<!-- Datenanalyse -->
# Anwendung/Praxis

\vspace{3mm}

\tiny
\setstretch{0.7}

```{r, echo = T}
# Modellevaluation
fname      = "Daten/T-Tests_Daten.csv"                            # Dateiname
D          = read.table(fname, sep = ",", header = TRUE)          # Dataframe
y_1        = D$dBDI[D$Setting == "F2F"]                           # BDI-Differenzwerte in der F2F-Gruppe
y_2        = D$dBDI[D$Setting == "ONL"]                           # BDI-Differenzwerte in der ONL-Gruppe
n_1        = length(y_1)                                          # Anzahl Datenpunkte Gruppe 1 (F2F)
n_2        = length(y_1)                                          # Anzahl Datenpunkte Gruppe 2 (ONL)
n          = n_1 + n_2                                            # Gesamtanzahl Datenpunkte
p          = 2                                                    # Anzahl Betaparameter
y          = matrix(c(y_1, y_2), nrow = n)                        # Datenvektor
X          = matrix(c(rep(1,n_1), rep(0,n_2),                     # Designmatrix
                      rep(0,n_1), rep(1,n_2)), nrow  = n)
beta_hat   = solve(t(X) %*% X) %*% t(X) %*% y                     # Betaparameterschätzer
eps_hat    = y - X %*% beta_hat                                   # Residuenvektor
sigsqr_hat = (t(eps_hat) %*% eps_hat) /(n-p)                      # Varianzparameterschätzer
delta      = 0.95                                                 # Konfidenzbedingung
t_delta    = qt((1+delta)/2,n-1)                                  # \Psi^{-1}((1+\delta)/2,n-1)
lambda     = diag(solve(t(X) %*% X))                              # \lambda_j Werte
kappa      = matrix(rep(NaN,p*2), nrow = p)                       # \beta_j Konfidenintervall-Array
for(j in 1:p){                                                    # Iteration über \beta_j
    kappa[j,1]  = beta_hat[j]-sqrt(sigsqr_hat*lambda[j])*t_delta  # untere KI Grenze
    kappa[j,2]  = beta_hat[j]+sqrt(sigsqr_hat*lambda[j])*t_delta  # obere  KI Grenze
}
c          = matrix(c(1,-1), nrow = 2)                            # Kontrastgewichtsvektor
mu_0       = 0                                                    # Nullhypothese H_0
alpha_0    = 0.05                                                 # Signifikanzniveau
k_alpha_0  = qt(1 - (alpha_0/2), n-1)                             # kritischer Wert
t_num      = t(c) %*% beta_hat - mu_0                             # T-Teststatistik Zähler
t_den      = sqrt(sigsqr_hat*t(c) %*% solve(t(X) %*% X)%*%c)      # T-Teststatistik Nenner
t          = t_num/t_den                                          # T-Teststatistik
if(abs(t) >= k_alpha_0){phi = 1} else {phi = 0}                   # Test 1_{|T(X) >= k_alpha_0|}
pval       = 2*(1-pt(abs(t), n_1+n_2-2))                          # p-Wert
d          = t/sqrt((n_1*n_2)/(n_1 + n_2))                        # Cohen's d 
```

\vspace{-1mm}
```{r, echo = F}
cat(  "hat{beta} = ", beta_hat,
    "\nfg        = ", n_1 + n_2 - 2,
    "\nkappa_1   = ", kappa[1,],
    "\nkappa_2   = ", kappa[2,],
    "\nt         = ", t,
    "\nalpha_0   = ", alpha_0,
    "\nk_alpha_0 = ", k_alpha_0,
    "\nphi       = ", phi,
    "\np-Wert    = ", pval,
    "\nCohen's d = ", d)
```


<!-- Datenanalyse -->
# Anwendung/Praxis

\small
\textcolor{darkblue}{Anwendungszenario}

\vspace{2mm}

\tiny
\setstretch{0.9}
```{r, echo = T}
# automatischer Zweistichproben-T-Test
varphi    = t.test(y_1, y_2,                      # Datensatz
                var.equal   = TRUE,               # \sigma_1^2 = \sigma_2^2
                alternative = c("two.sided"),     # H_1: \mu_1 \neq \mu_2
                conf.level  = 1-alpha_0)          # \delta = 1 - \alpha_0

# Ausgabe
print(varphi)

# genauere Ausgabe von t
paste(varphi[1]$statistic)

# genauere Ausgabe von p
paste(varphi[3]$p.value)
```

\setstretch{1.5}
* R nutzt hier eine alternative Parameterisierung des Zweistichproben-T-Test Szenarios, die sogenannten *Effektdarstellung*.
* Wir werden die Effektdarstellung im Kontext der einfaktoriellen Varianzanalyse ausführlich diskutieren.


<!-- Datensatz: Great 10k -->
# Anwendung/Praxis

\small
Datensatz: erste vs. zweite 5 km beim Great 10k (08.10.2017), alle Teilnehmer ($n = 4883$)

```{r, echo = F, eval = T}
# Daten einlesen
filename = "Daten/great_10k.csv"
D        = read.csv(filename)

# Daten reduzieren
excl     = c("FU14", "FU16", "FU18", "FU20", "FU23", "F70", "F75", "F80", "MU14", "MU16", "MU18", "MU20", "MU23", "M70", "M75", "M80")
incl     = c("FE", "FH", "F30", "F35", "F40", "F45", "F50", "F55", "F60", "F65", "ME", "MH", "M30", "M35", "M40", "M45", "M50", "M55", "M60", "M65")
D        = D[!(D$AgeGroup %in% excl),]
D        = D[!(D$X5kTime  == "NaN:NaN:NaN"),]
D        = D[!(D$X10kTime == "NaN:NaN:NaN"),]
n        = nrow(D)

# Daten umsortieren
D$AgeGroup = factor(D$AgeGroup, levels = incl)

# Daten umrechnen
t5_hms   = D$X5kTime
t5_min   = rep(0, n)
t10_hms  = D$X10kTime
t10_min  = rep(0, n)
for(i in 1:n){
    t5         = t5_hms[i]
    t10        = t10_hms[i]
    t5_min[i]  = as.numeric(substr(t5,1,2))*60  + as.numeric(substr(t5,4,5))  + as.numeric(substr(t5,7,8))/60
    t10_min[i] = as.numeric(substr(t10,1,2))*60 + as.numeric(substr(t10,4,5)) + as.numeric(substr(t10,7,8))/60
}
D$T5k1   = t5_min
D$T5k2   = t10_min-t5_min
D$T10k   = t10_min
D$Tdiff  = D$T5k2 - D$T5k1
```

\vspace{2mm}
```{r, echo = F, out.width = "60%"}
knitr::include_graphics("Abbildungen/great_10k_streudiagramm.pdf")
```


<!-- Zweistichproben-T-Test (falsch) -->
# Anwendung/Praxis

\small
Zweistichproben-T-Test: erste vs. zweite 5 km, alle Teilnehmer ($n_1 = n_2 = 4883$)

\vspace{2mm}
```{r, echo = T, eval = T}
# Zweistichproben-T-Test (falsch)
y1     = D$T5k1                                             # "Gruppe" 1
y2     = D$T5k2                                             # "Gruppe" 2
n1     = length(y1)                                         # Anzahl Gruppe 1
n2     = length(y2)                                         # Anzahl Gruppe 2
n      = n1 + n2                                            # Anzahl Datenpunkte
p      = 2                                                  # Anzahl Regressoren
y      = matrix(c(y1,y2), nrow = n)                         # Datenvektor
X      = matrix(c(rep(1,n1), rep(0,n2),                     # Designmatrix
                  rep(0,n1), rep(1,n2)), ncol = p)
```

```{r, echo = F, eval = T}
# Zweistichproben-T-Test (falsch)
b_hat  = solve(t(X) %*% X) %*% t(X) %*% y                   # Betaparameterschätzer
e_hat  = y - X %*% b_hat                                    # Residuenvektor
s2_hat = (t(e_hat) %*% e_hat)/(n-p)                         # Varianzparameterschätzer
c      = matrix(c(1,-1), nrow = p)                          # Kontrastvektor
cTb0   = 0                                                  # Nullhypothese
t      = (t(c)%*%b_hat - cTb0)/sqrt(s2_hat * t(c)%*%solve(t(X) %*% X)%*%c)  # T-Statistik
d      = t/sqrt(n)                                          # Cohen's d 
pval   = 2*(1 - pt(abs(t), n-1))                            # p-Wert
cat(  "Datenpunkte pro Gruppe          : ", round(c(n1,n2), digits = 3),
    "\nBetaparameterschätzer           : ", round(b_hat,    digits = 3),
    "\nVarianzparameterschätzer        : ", round(s2_hat,   digits = 3),
    "\nZweistichproben-T-Teststatistik : ", round(t,        digits = 3),
    "\nCohen's d                       : ", round(d,        digits = 3),
    "\np-Wert                          : ", round(pval,     digits = 3), "\n\n")
```


<!-- Zweistichproben-T-Test (richtig) -->
# Anwendung/Praxis

\small
Zweistichproben-T-Test: Differenz 5-km-Strecken, Frauen vs. Männer ($n_1 = 1921$, $n_2 = 2962$)

\vspace{2mm}
```{r, echo = T, eval = T}
# Zweistichproben-T-Test (richtig)
y1     = D$Tdiff[D$Sex=="F"]                                # Gruppe 1
y2     = D$Tdiff[D$Sex=="M"]                                # Gruppe 2
n1     = length(y1)                                         # Anzahl Gruppe 1
n2     = length(y2)                                         # Anzahl Gruppe 2
n      = n1 + n2                                            # Anzahl Datenpunkte
p      = 2                                                  # Anzahl Regressoren
y      = matrix(c(y1,y2), nrow = n)                         # Datenvektor
X      = matrix(c(rep(1,n1), rep(0,n2),                     # Designmatrix
                  rep(0,n1), rep(1,n2)), ncol = p)
```

```{r, echo = F, eval = T}
# Zweistichproben-T-Test (richtig)
b_hat  = solve(t(X) %*% X) %*% t(X) %*% y                   # Betaparameterschätzer
e_hat  = y - X %*% b_hat                                    # Residuenvektor
s2_hat = (t(e_hat) %*% e_hat)/(n-p)                         # Varianzparameterschätzer
c      = matrix(c(1,-1), nrow = p)                          # Kontrastvektor
cTb0   = 0                                                  # Nullhypothese
t      = (t(c)%*%b_hat - cTb0)/sqrt(s2_hat * t(c)%*%solve(t(X) %*% X)%*%c)  # T-Statistik
d      = t/sqrt(n)                                          # Cohen's d 
pval   = 2*(1 - pt(abs(t), n-1))                            # p-Wert
cat(  "Datenpunkte pro Gruppe          : ", round(c(n1,n2), digits = 3),
    "\nBetaparameterschätzer           : ", round(b_hat,    digits = 3),
    "\nVarianzparameterschätzer        : ", round(s2_hat,   digits = 3),
    "\nZweistichproben-T-Teststatistik : ", round(t,        digits = 3),
    "\nCohen's d                       : ", round(d,        digits = 3),
    "\np-Wert                          : ", round(pval,     digits = 3), "\n\n")
```


<!-- Datensatz: Küchenrollen -->
# Anwendung/Praxis

\small
Beispiel: Induzieren Bewegungen im Uhrzeigersinn Offenheit für neue Erfahrungen (= "psychische Zustände zeitlichen Fortschreitens und eine Orientierung auf die Zukunft und Neuartigkeit")? (@wagenmakers_turning_2015)

\vspace{2mm}
\begin{minipage}{0.58\textwidth}
  \includegraphics[width=\linewidth]{Abbildungen/kitchen_rolls_abstract.png}
\end{minipage}
\hfill
\begin{minipage}{0.40\textwidth}
  \includegraphics[width=\linewidth]{Abbildungen/kitchen_rolls_experiment.png}
\end{minipage}

<!-- ```{r, echo = F, out.width = "50%", fig.show = 'hold'}
knitr::include_graphics("Abbildungen/kitchen_rolls_abstract.png")
knitr::include_graphics("Abbildungen/kitchen_rolls_experiment.png")
``` -->


<!-- Datensatz: Küchenrollen -->
# Anwendung/Praxis

\small
Datensatz: mittlere NEO-PI-R-Scores, getrennt nach Rotationsrichtung ($n = 102$)

```{r, echo = F, eval = T}
# Daten einlesen
filename = "Daten/kitchen_rolls.csv"
D        = read.csv(filename)

# Daten aufräumen
levs       = c("clock", "counter")
D$Rotation = factor(D$Rotation, levels = levs)
```

```{r, echo = F, eval = F}
# Daten visualisieren
library(vioplot)
par(
    family      = "sans",
    mar         = c(3,3,1,1),
    pty         = "m",
    bty         = "l",
    lwd         = 1,
    las         = 1,
    mgp         = c(2,1,0),
    xaxs        = "i",
    yaxs        = "i",
    font.main   = 1.5,
    cex         = 1.5)

# Violinplot
vioplot(D$mean_NEO ~ D$Rotation, D,
    col         = "gray80",
    rectCol     = "black",
    lineCol     = "white",
    colMed      = "black",
    border      = "black",
    pchMed      = 16,
    plotCentre  = "lines",
    xlab        = "rotation",
    ylab        = "mean NEO",
    ylim        = c(-1,2.5),
    drawRect    = FALSE)

# Datenpunkte
stripchart(D$mean_NEO ~ D$Rotation, D,
    method      = "jitter",
    xaxt        = "n",
    vertical    = TRUE,
    pch         = 19,
    col         = "black",
    add         = TRUE,
    cex         = 1)

# Mittelwerte
dx = 0.3
for (i in 1:length(levs)) {
    segments(
        x0      = i - dx,
        x1      = i + dx,
        y0      = median(D$mean_NEO[D$Rotation==levs[i]]),
        y1      = median(D$mean_NEO[D$Rotation==levs[i]]),
        col     = "black",
        lwd     = 2)
}

# Speichern
dev.copy2pdf(
    file        = "Abbildungen/kitchen_rolls_violin_plot.pdf",
    width       = 9,
    height      = 9)
```

\vspace{2mm}
```{r, echo = F, out.width = "60%"}
knitr::include_graphics("Abbildungen/kitchen_rolls_violin_plot.pdf")
```


<!-- Zweistichproben-T-Test -->
# Anwendung/Praxis

\small
Zweistichproben-T-Test: mittlere NEO-PI-R-Scores, im UZS vs. gegen den UZS ($n_1 = 48$, $n_2 = 54$)

\vspace{2mm}
```{r, echo = T, eval = T}
# Zweistichproben-T-Test
y1     = D$mean_NEO[D$Rotation=="clock"]                    # Gruppe 1
y2     = D$mean_NEO[D$Rotation=="counter"]                  # Gruppe 2
n1     = length(y1)                                         # Anzahl Gruppe 1
n2     = length(y2)                                         # Anzahl Gruppe 2
n      = n1 + n2                                            # Anzahl Datenpunkte
p      = 2                                                  # Anzahl Regressoren
y      = matrix(c(y1,y2), nrow = n)                         # Datenvektor
X      = matrix(c(rep(1,n1), rep(0,n2),                     # Designmatrix
                  rep(0,n1), rep(1,n2)), ncol = p)
```

```{r, echo = F, eval = T}
# Zweistichproben-T-Test
b_hat  = solve(t(X) %*% X) %*% t(X) %*% y                   # Betaparameterschätzer
e_hat  = y - X %*% b_hat                                    # Residuenvektor
s2_hat = (t(e_hat) %*% e_hat)/(n-p)                         # Varianzparameterschätzer
c      = matrix(c(1,-1), nrow = p)                          # Kontrastvektor
cTb0   = 0                                                  # Nullhypothese
t      = (t(c)%*%b_hat - cTb0)/sqrt(s2_hat * t(c)%*%solve(t(X) %*% X)%*%c)  # T-Statistik
d      = t/sqrt(n)                                          # Cohen's d 
pval   = 2*(1 - pt(abs(t), n-1))                            # p-Wert
cat(  "Datenpunkte pro Gruppe          : ", round(c(n1,n2), digits = 3),
    "\nBetaparameterschätzer           : ", round(b_hat,    digits = 3),
    "\nVarianzparameterschätzer        : ", round(s2_hat,   digits = 3),
    "\nZweistichproben-T-Teststatistik : ", round(t,        digits = 3),
    "\nCohen's d                       : ", round(d,        digits = 3),
    "\np-Wert                          : ", round(pval,     digits = 3), "\n\n")
```


<!-- Zweistichproben-T-Test -->
# Anwendung/Praxis

\small
Zweistichproben-T-Test: mittlere NEO-PI-R-Scores, Frauen vs. Männer ($n_1 = 77$, $n_2 = 25$)

\vspace{2mm}
```{r, echo = T, eval = T}
# Zweistichproben-T-Test
y1     = D$mean_NEO[D$Sex=="F"]                             # Gruppe 1
y2     = D$mean_NEO[D$Sex=="M"]                             # Gruppe 2
n1     = length(y1)                                         # Anzahl Gruppe 1
n2     = length(y2)                                         # Anzahl Gruppe 2
n      = n1 + n2                                            # Anzahl Datenpunkte
p      = 2                                                  # Anzahl Regressoren
y      = matrix(c(y1,y2), nrow = n)                         # Datenvektor
X      = matrix(c(rep(1,n1), rep(0,n2),                     # Designmatrix
                  rep(0,n1), rep(1,n2)), ncol = p)
```

```{r, echo = F, eval = T}
# Zweistichproben-T-Test
b_hat  = solve(t(X) %*% X) %*% t(X) %*% y                   # Betaparameterschätzer
e_hat  = y - X %*% b_hat                                    # Residuenvektor
s2_hat = (t(e_hat) %*% e_hat)/(n-p)                         # Varianzparameterschätzer
c      = matrix(c(1,-1), nrow = p)                          # Kontrastvektor
cTb0   = 0                                                  # Nullhypothese
t      = (t(c)%*%b_hat - cTb0)/sqrt(s2_hat * t(c)%*%solve(t(X) %*% X)%*%c)  # T-Statistik
d      = t/sqrt(n)                                          # Cohen's d 
pval   = 2*(1 - pt(abs(t), n-1))                            # p-Wert
cat(  "Datenpunkte pro Gruppe          : ", round(c(n1,n2), digits = 3),
    "\nBetaparameterschätzer           : ", round(b_hat,    digits = 3),
    "\nVarianzparameterschätzer        : ", round(s2_hat,   digits = 3),
    "\nZweistichproben-T-Teststatistik : ", round(t,        digits = 3),
    "\nCohen's d                       : ", round(d,        digits = 3),
    "\np-Wert                          : ", round(pval,     digits = 3), "\n\n")
```


<!-- Anhang: Selbstkontrollfragen -->
#

\large
\setstretch{3}
\vfill

Überblick

Einstichproben-T-Tests

Zweistichproben-T-Tests

**Selbstkontrollfragen**

\vfill


<!-- Selbstkontrollfragen -->
# Selbstkontrollfragen

\footnotesize
\setstretch{1.2}
\begin{enumerate}

\item Erläutern Sie die Extremszenarien im Kontinuum von ALM-Designs.
\item Erläutern Sie die Begriffe der faktoriellen und parametrischen ALM-Designs.
\item Nennen Sie Beispiele für faktorielle, parametrische und faktoriell-parametrische ALM-Designs.
\item Erläutern Sie das Anwendungsszenario eines Einstichproben-T-Tests.
\item Erläutern Sie mögliche Hypothesenszenarien eines Einstichproben-T-Tests.
\item Geben Sie die Definition des Einstichproben-T-Test-Modells wieder.
\item Geben Sie das Theorem zur Parameterschätzung im Einstichproben-T-Test-Modell wieder.
\item Geben Sie das Theorem zur T-Teststatistik des Einstichproben-T-Tests wieder.
\item Geben Sie die Definition des zweiseitigen Einstichproben-T-Tests (mit ungerichteter Hypothese) wieder.
\item Skizzieren Sie die Testgütefunktion des zweiseitigen Einstichproben-T-Tests.
\item Geben Sie das Theorem zur Testumfangkontrolle im zweiseitigen Level-$\alpha_0$-Einstichproben-T-Test wieder.
\item Erläutern Sie das praktische Vorgehen bei Durchführung eines zweiseitigen Level-$\alpha_0$-Einstichproben-T-Tests.
\item Geben Sie die Definition des p-Wertes Werts für einen zweiseitigen Einstichproben-T-Test wieder.
\item Von welchen Werten hängt die Powerfunktion eines zweiseitigen Einstichproben-T-Tests ab?
\item Skizzieren Sie die Powerfunktion des Einstichproben-T-Tests bei fester Stichprobengröße.
\item Skizzieren Sie die Powerfunktion des Einstichproben-T-Tests bei festem Nichtzentralitätsparameter.

\end{enumerate}


<!-- Selbstkontrollfragen -->
# Selbstkontrollfragen

\vspace{2mm}
\footnotesize
\setstretch{1.2}
\begin{enumerate}
\setcounter{enumi}{16}

\item Erläutern Sie das Anwendungsszenario eines Zweistichproben-T-Tests.
\item Geben Sie die Definition des Zweistichproben-T-Test-Modells wieder.
\item Geben Sie das Theorem zur Parameterschätzung im Zweistichproben-T-Test-Modell wieder.
\item Geben Sie das Theorem zur T-Teststatistik des Zweistichproben-T-Tests wieder.
\item Erläutern Sie mögliche Hypothesenszenarien eines Zweistichproben-T-Tests.
\item Geben Sie die Definition des zweiseitigen Zweistichproben-T-Tests (mit ungerichteter Hypothese) wieder.
\item Skizzieren Sie die Testgütefunktion des zweiseitigen Zweistichproben-T-Tests.
\item Geben Sie das Theorem zur Testumfangkontrolle im zweiseitigen Level-$\alpha_0$-Zweistichproben-T-Test wieder.
\item Erläutern Sie das praktische Vorgehen bei Durchführung eines zweiseitigen Level-$\alpha_0$-Zweistichproben-T-Tests.
\item Geben Sie die Definition des p-Wertes für einen zweiseitigen Zweistichproben-T-Test wieder.
\item Von welchen Werten hängt die Powerfunktion eines zweiseitigen Zweistichproben-T-Tests ab?
\item Skizzieren Sie die Powerfunktion des Zweistichproben-T-Tests bei fester Stichprobengröße.
\item Skizzieren Sie die Powerfunktion des Zweistichproben-T-Tests bei festem Nichtzentralitätsparameter.

\end{enumerate}
\vfill


<!-- Literatur -->
# Referenzen
