---
fontsize: 8pt
format:
  beamer:
    include-in-header: ../ALM_Header.tex
bibliography: ../ALM_Referenzen.bib
---


# {.plain}
<!-- Vorlesungstitel -->
<!-- Comments must not be before the first slide, because
otherwise, there will be an empty slide at the beginning -->
\center
```{r, echo = FALSE, 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


<!-- Aufnahme -->
# {.plain}

\vfill
\center
\Huge
\textcolor{red}{Aufnahme läuft!}
\vfill


<!-- Sitzung 0: Formalia -->
# {.plain}

\vfill
\center
\huge
\textcolor{black}{(0) Formalia}
\vfill


# Lehrperson

\vfill
\large
Joram Soch

Wissenschaftlicher Mitarbeiter

Lehrstuhl für Methodenlehre I

Institut für Psychologie

Otto-von-Guericke-Universität Magdeburg

E-Mail: [\textcolor{darkblue}{joram.soch@ovgu.de}](mailto:joram.soch@ovgu.de)
\vfill


<!-- Kursmodalitäten -->
# Kursinfos {.t}

\textcolor{darkblue}{Modul B2: Inferenzstatistik | Allgemeines Lineares Modell}
\setstretch{2}

* donnerstags, 9-13 Uhr (\textit{de facto} 10:00-12:45), G40B-326

* Kursmaterialien (Folien, Videos, Skript) auf der [\textcolor{darkblue}{Kurswebseite}](https://www.ipsy.ovgu.de/Institut/Abteilungen+des+Institutes/Methodenlehre+I+_+Experimentelle+und+Neurowissenschaftliche+Psychologie/Lehre/Sommersemester+2025/Allgemeines+Lineares+Modell.html)

* Ankündigungen (Termine, Klausur) über die [\textcolor{darkblue}{Moodleseite}](https://elearning.ovgu.de/course/section.php?id=168013)

* benotete Multiple-Choice-Klausur (30 Fragen) am Ende des SoSe 2025

* Klausurwiederholungstermin am Ende des WiSe 25/26

* Klausurtermin und Klausurort gemäß Prüfungsplan des [\textcolor{darkblue}{FNW-Prüfungsamtes}](https://www.fnw.ovgu.de/Studium/Pr%C3%BCfungsamt.html)


<!-- Kursplan -->
# Kursinfos {.t}

\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}


<!-- Kursplan -->
# Kursinfos {.t}

\textcolor{darkblue}{Modul B2: Allgemeines Lineares Modell \& Modul C2: Analyse und Dokumentation}

\centering
\vspace{6mm}
\includegraphics[width=1.1\linewidth, clip=true, trim=10 100 20 50]{Abbildungen/ALM_2025_Semesterplan}


<!-- Modulthemen -->
# Kursinfos {.t}

\textcolor{darkblue}{Modul B2: Inferenzstatistik | Allgemeines Lineares Modell}

\vspace{1mm}
\small

\small
\setstretch{1.5}
\center
\begin{tabular}{ll}
Themenkomplexe (Modulhandbuch BSc Psychologie, 2020)            & Lehrveranstaltung(en) \\ \hline
Deskription, grafische und tabellarische Darstellung von Daten  & PDS                   \\
Verteilungskennwerte: Maße der zentralen Tendenz, Streuungsmaße & PDS                   \\
Wahrscheinlichkeitstheorie und Wahrscheinlichkeitsrechnung      & WTFI                  \\
Stichprobe und Grundgesamtheit                                  & WTFI                  \\
Formulierung und Prüfung von Hypothesen                         & WTFI, ALM             \\
Effektstärke und optimale Stichprobenumfänge                    & WTFI, ALM             \\
Verfahren zur Prüfung von Unterschiedshypothesen                & WTFI, ALM             \\
Verfahren zur Prüfung von Zusammenhangshypothesen               & WTFI, ALM             \\
Korrelation und multiple Regression                             & ALM                   \\
Varianzanalyse                                                  & ALM                   \\
Anwendungsbeispiele                                             & PDS, WTFI, ALM, AD    \\
\end{tabular}


<!-- Klausurinfos -->
# Kursinfos {.t}

\textcolor{darkblue}{Modul B2: Inferenzstatistik | Allgemeines Lineares Modell}

\setstretch{2}
* Die Vorlesungsfolien inklusive der Selbstkontrollfragen **sind** klausurrelevant.
* Das Vorlesungsskript ist **nicht** klausurrelevant (aber hilfreich).
* Altklausuren finden sich auf den Kurswebseiten früherer Jahre.

* Als weiterführende Literatur bieten sich an:
  * Searle, S.R. (1971) Linear Models
  * Werner, J. (1997) Lineare Statistik
  * DeGroot, M.H. & Shervish, M.J. (2012) Probability and Statistics
  * Fahrmeir, L., Heumann, C., Künstler, R., Pigeot, I., Tutz, G. (2016) Statistik
  * Fox, J., Sanford, W. (2019) An R Companion to Applied Regression


<!-- Evaluation: ALM, SS 2024 -->
# Evaluation

\small
\center
*Allgemeines Lineares Modell*, SoSe 2024 ($n = 39+7$)
\vspace{2mm}

\footnotesize
\textcolor{green}{$\bullet$}      stimme voll zu      $\quad$
\textcolor{lightgreen}{$\bullet$} stimme zu           $\quad$
\textcolor{yellow}{$\bullet$}     neutral             $\quad$
\textcolor{orange}{$\bullet$}     stimme nicht zu     $\quad$
\textcolor{red}{$\bullet$}        stimme gar nicht zu $\quad$
\vspace{1mm}

```{r, echo = F, eval = F}
# load libraries
library(pracma)
library(readxl)
library(openxlsx)
library(plot.matrix)

# load results
fname1 = 'Daten/ALM_2024_Evaluation_I.xlsx'
D1     = read_excel(fname1)                 # read Excel file
D1     = D1[,1:(ncol(D1)-1)]                # remove last column
fname2 = 'Daten/ALM_2024_Evaluation_II.xlsx'
D2     = read_excel(fname2)                 # read Excel file
D2     = D2[,1:(ncol(D2)-1)]                # remove last column
D      = rbind(D1, D2)

# prepare results
n         = nrow(D)
q         = ncol(D)-2
responses = matrix(NA, nrow=n, ncol=q)

# define responses
ques_str = colnames(D)[2:(ncol(D)-1)]
resp_str = c('stimme überhaupt nicht zu', 'stimme nicht zu', 'neutral', 'stimme zu', 'stimme voll und ganz zu')

# analyze data
for (i in 1:n) {
    for (j in 1:q) {
        if (is.na(D[i,1+j])) {
            responses[i,j] = NA
        } else {
            for (k in 1:length(resp_str)) {
                if (D[i,1+j] == resp_str[k]) {
                    responses[i,j] = k
                }
            }
        }
    }
}

# collect responses
R = matrix(NA, nrow=q, ncol=n)
for (j in 1:q) {
    n_resp        = sum(!is.na(responses[,j]))
    resp_j        = responses[!is.na(responses[,j]),j]
    R[j,1:n_resp] = c(rep(1, sum(resp_j==5)),
                      rep(2, sum(resp_j==4)),
                      rep(3, sum(resp_j==3)),
                      rep(4, sum(resp_j==2)),
                      rep(5, sum(resp_j==1)))
}

# create labels
y_labels = ques_str
num_char = 70
for (j in 1:q) {
    if (nchar(ques_str[j]) <= num_char) {
        y_labels[j] = ques_str[j]
    } else {
        y_labels[j] = paste(substr(ques_str[j], 1, num_char), '...')
    }
}
rownames(R) = y_labels

# plot responses
par(
    family    = "sans",
    mar       = c(1, 30, 3, 1), # bottom, left, top, right margin
    pty       = "m",
    bty       = "l",
    lwd       = 1,
    las       = 1,
    mgp       = c(2,1,0),
    xaxs      = "i",
    yaxs      = "i",
    font.main = 1,
    cex       = 1,
    cex.main  = 2)
plot(R,
    breaks    = 1:5,
    col       = c("#209c05", "#85e62c", "#ebff0a", "#ee6f27", "#ff0a0a"),
    border    = "darkgray",
    key       = NULL,
    cex       = 1,
    xlab      = '',
    ylab      = '',
    xaxt      = 'n',
    yaxt      = 'n',
    main      = sprintf('Evaluation: Alle Antworten (n = %.0f)', n))
axis(1,
    at        = 1:n,
    labels    = 1:n,
    cex.axis  = 0.7)
dev.copy2pdf(
    file      = 'Abbildungen/ALM_2024_Evaluation.pdf',
    width     = 16,
    height    = 9)
dev.off()
```

```{r, echo = F, out.width = "100%"}
knitr::include_graphics("Abbildungen/ALM_2024_Evaluation.pdf")
```


<!-- Evaluation: WTFI, WS 24/25 -->
# Evaluation

\small
\center
*Wahrscheinlichkeitstheorie und Frequentistische Inferenz*, WiSe 24/25 ($n = 50$)
\vspace{2mm}

\footnotesize
\textcolor{green}{$\bullet$}      stimme voll zu      $\quad$
\textcolor{lightgreen}{$\bullet$} stimme zu           $\quad$
\textcolor{yellow}{$\bullet$}     neutral             $\quad$
\textcolor{orange}{$\bullet$}     stimme nicht zu     $\quad$
\textcolor{red}{$\bullet$}        stimme gar nicht zu $\quad$
\vspace{1mm}

```{r, echo = F, eval = F}
# load libraries
library(pracma)
library(readxl)
library(openxlsx)
library(plot.matrix)

# load results
fname  = 'Daten/WTFI_2024_Evaluation.xlsx'
D      = read_excel(fname)                  # read Excel file
D      = D[,1:(ncol(D)-1)]                  # remove last column

# prepare results
n         = nrow(D)
q         = ncol(D)-2
responses = matrix(NA, nrow=n, ncol=q)

# define responses
ques_str = colnames(D)[2:(ncol(D)-1)]
resp_str = c('Stimme überhaupt nicht zu', 'Stimme nicht zu', 'Neutral', 'Stimme zu', 'Stimme voll und ganz zu')
time_str = c('< 2 Stunden', '2-4 Stunden', '4-6 Stunden', '6-8 Stunden', '> 8 Stunden')

# analyze data
for (i in 1:n) {
    for (j in 1:q) {
        if (is.na(D[i,1+j])) {
            responses[i,j] = NA
        } else {
            for (k in 1:length(resp_str)) {
                if (D[i,1+j] == resp_str[k]) {
                    responses[i,j] = k
                }
            }
        }
    }
}

# collect responses
R = matrix(NA, nrow=q, ncol=n)
for (j in 1:q) {
    n_resp        = sum(!is.na(responses[,j]))
    resp_j        = responses[!is.na(responses[,j]),j]
    R[j,1:n_resp] = c(rep(1, sum(resp_j==5)),
                      rep(2, sum(resp_j==4)),
                      rep(3, sum(resp_j==3)),
                      rep(4, sum(resp_j==2)),
                      rep(5, sum(resp_j==1)))
}

# create labels
y_labels = ques_str
num_char = 70
for (j in 1:q) {
    if (nchar(ques_str[j]) <= num_char) {
        y_labels[j] = ques_str[j]
    } else {
        y_labels[j] = paste(substr(ques_str[j], 1, num_char), '...')
    }
}
rownames(R) = y_labels

# plot responses
par(
    family    = "sans",
    mar       = c(1, 30, 3, 1), # bottom, left, top, right margin
    pty       = "m",
    bty       = "l",
    lwd       = 1,
    las       = 1,
    mgp       = c(2,1,0),
    xaxs      = "i",
    yaxs      = "i",
    font.main = 1,
    cex       = 1,
    cex.main  = 2)
plot(R,
    breaks    = 1:5,
    col       = c("#209c05", "#85e62c", "#ebff0a", "#ee6f27", "#ff0a0a"),
    border    = "darkgray",
    key       = NULL,
    cex       = 1,
    xlab      = '',
    ylab      = '',
    xaxt      = 'n',
    yaxt      = 'n',
    main      = sprintf('Evaluation: Alle Antworten (n = %.0f)', n))
axis(1,
    at        = 1:n,
    labels    = 1:n,
    cex.axis  = 0.7)
dev.copy2pdf(
    file      = 'Abbildungen/WTFI_2024_Evaluation.pdf',
    width     = 16,
    height    = 9)
dev.off()
```

```{r, echo = F, out.width = "100%"}
knitr::include_graphics("Abbildungen/WTFI_2024_Evaluation.pdf")
```


<!-- Zur wöchentlichen Mitarbeit im Kurs -->
# Hinweise

\large
\textcolor{darkblue}{Zur wöchentlichen Mitarbeit im Kurs}

\normalsize
\setstretch{2.5}
* Bereiten Sie sich auf die Vorlesung durch Lesen des Skriptes vor.
* Wenn nach Skriptlektüre/Vorlesung noch Unklarheiten bestehen, fragen Sie.
* Fragen im Rahmen der Vorlesung helfen Ihnen und Ihren Kommilitonen.
* Fragen im Rahmen der Vorlesung helfen der Weiterentwicklung des Kurses.
* Bearbeiten Sie die Selbstkontrollfragen.
\vfill


<!-- Zur Arbeit mit Selbskontrollfragen -->
# Hinweise

\large
\textcolor{darkblue}{Zur Arbeit mit Selbskontrollfragen}

\normalsize
\setstretch{2.5}
* Die Selbskontrollfragen fokussieren den Vorlesungsstoff.
* "Geben Sie ... wieder" heißt "Geben Sie ... *wortwörtlich* wieder".
* Dazu ist die entsprechende Definition/Theorem auswendig zu lernen. 
* "Erläutern Sie ..." heißt "Nutzen Sie Ihre eigenen Worte" zur Darstellung. 
* Erläuterungen beziehen sich auf die Bemerkungen zu Definitionen/Theoremen.
* Die Selbstkontrollfragen sind die Grundlage zur Entwicklung von Klausurfragen.
* Die Lösungen der Selbstkontrollfragen finden Sie im Skript und auf den Folien.
\vfill


<!-- Lernphasen -->
# Hinweise

\large
\textcolor{darkblue}{Lernphasen}

\small
\setstretch{1.2}
\vspace{4mm}

Phase 1: Überblicken

* Überblick durch Vorlesung und Überfliegen der Materialien
* Verstehen einfacher Zusammenhänge
* Verstehen, was man nicht versteht

Phase 2: Verstehen

* Erarbeiten des Verstehens komplexer Zusammenhänge
* Schriftliche Beantwortung der Selbstkontrollfragen
* Klärung von Details, z.B. mit Vorlesungsvideos

Phase 3: Memorisieren

* Auswendiglernen aller Inhalte
* Aktive Wiedergabe der Inhalte, schriftlich oder mündlich
* Teilnahme an der Klausur

Teilen Sie große Aufgaben immer in viele kleine, gut zu bewältigende Aufgaben!


<!-- Q & A -->
# Formalia

\Huge
\vfill
\center
Q & A
\vfill