
Vorlesung 3

Heute zuerst ohne KI
Lösen Sie die Aufgaben heute zunächst ohne KI. Gerade bei Simulationen, Tests und Modellinterpretationen ist der eigene Diagnoseweg didaktisch wichtiger als ein schneller Lösungsvorschlag.
| Zeit | Inhalt |
|---|---|
| 08:30 - 09:45 | Wahrscheinlichkeitsverteilungen in R: d/p/q/r, wichtige Verteilungen, kurze RechenphaseOrientierung, zwei Kurzübungen, kompakte Arbeitsphase |
| 10:00 - 11:30 | Monte-Carlo-Simulation: Grundidee, Panini-Beispiel, Logistikzentrum mit Wartezeiten gemeinsamer Einstieg, dann größere Simulationsaufgabe |
| 12:15 - 13:15 | Testen und Testausgaben: Testwahl, t.test, binom.test, prop.test, cor.testkurze Rechen- und Interpretationsphase |
| 13:30 - 15:30 | Lineare Modelle und ANOVA: Formeln, lm, summary, predict, anovagemeinsamer Modellaufbau, dann Arbeitsphase mit diamonds |
| 15:45 - 17:30 | Logistische Regression: glm(..., family = binomial), Wahrscheinlichkeiten, Klassifikation, FehlerrateOrientierung, Kurzübung, Arbeitsphase und Abschlussbesprechung |
Pausen und Besprechungen nutzen wir wieder, um offene Fragen direkt zu klären und den Schwierigkeitsgrad bei Bedarf anzupassen.
d/p/q/r-Schema| Präfix | Bedeutung | Typische Frage | Beispiel |
|---|---|---|---|
d |
Dichte- oder Wahrscheinlichkeitsfunktion | Wie groß ist der Wert bei x? |
dbinom(3, size = 10, prob = 0.2) |
p |
Verteilungsfunktion | Wie groß ist P(X <= x)? |
pnorm(1.96) |
q |
Quantilsfunktion | Welcher Wert gehört zu einer Wahrscheinlichkeit p? |
qnorm(0.975) |
r |
Zufallszahlen | Wie simuliere ich Werte aus der Verteilung? | rnorm(100, mean = 0, sd = 1) |
Merksatz
Das wichtigste Lesemuster ist: d gibt Funktionswerte, p kumulierte Wahrscheinlichkeiten, q Schwellenwerte und r simulierte Realisationen.
| Verteilung | Schlüsselwort | Typische Funktion | Typischer Einsatz |
|---|---|---|---|
| Binomialverteilung | binom |
dbinom, pbinom, rbinom |
Anzahlen von Erfolgen |
| Poissonverteilung | pois |
dpois, ppois, rpois |
Ereignisse pro Zeitintervall |
| Normalverteilung | norm |
dnorm, pnorm, qnorm, rnorm |
Messwerte und Standardisierung |
| t-Verteilung | t |
dt, pt, qt, rt |
Tests und Konfidenzintervalle |
| Exponentialverteilung | exp |
dexp, pexp, qexp, rexp |
Warte- und Zwischenankunftszeiten |
Achtung
Die Funktionen sehen ähnlich aus, aber die Parameter unterscheiden sich. Bei rnorm heißen sie z. B. mean und sd, bei rbinom dagegen size und prob.
dbinom(x = 3, size = 10, prob = 0.2).pbinom(q = 3, size = 10, prob = 0.2).dnorm(x = 0.5, mean = 0, sd = 1) und pnorm(q = 1.96, mean = 0, sd = 1).pnorm(1.96) als kumulierte Wahrscheinlichkeit.qnorm(p = 0.975, mean = 0, sd = 1) und deuten Sie das Ergebnis.set.seed(123) einen Startwert.rbinom(n = 5, size = 10, prob = 0.3) fünf simulierte Stichprobenwerte.rnorm(n = 5, mean = 100, sd = 15) fünf normalverteilte Werte.Bearbeiten Sie die folgenden vier Teilaufgaben systematisch:
0.08 defekt. Berechnen Sie die Wahrscheinlichkeit für genau 2 defekte Teile.100 und Standardabweichung 15. Bestimmen Sie den Grenzwert, oberhalb dessen nur noch 5 % der Werte liegen.5000 Stichproben des Defektproblems mit rbinom(...) und vergleichen Sie den empirischen Anteil aus Aufgabe 1 mit dem theoretischen Wert.d, p, q oder r?d, p, q und r sauber unterscheidend und p beantworten unterschiedliche Fragen, auch wenn dieselben Parameter verwendet werden.q läuft die Richtung der Verteilungsfunktion gewissermaßen rückwärts.r erzeugt keine Theorie, sondern simulierte Realisationen mit Zufallsschwankung.set.seed(...) werden Simulationen reproduzierbar.Merksatz
Wenn ein Ergebnis unplausibel wirkt, prüfen Sie zuerst nicht den Taschenrechner, sondern die Frage: War eigentlich d, p, q oder r gemeint?
Modellannahmen festlegen
einen Zufallsprozess simulieren
pro Durchlauf eine Kennzahl berechnen
viele Wiederholungen gemeinsam auswerten
Typische Schätzer sind Mittelwerte oder relative Häufigkeiten.
Mehr Wiederholungen stabilisieren die Schätzung, erhöhen aber den Rechenaufwand.
Merksatz
Monte Carlo liefert keine exakte Formel, sondern eine numerische Approximation. Entscheidend ist deshalb immer: Welcher Prozess wird simuliert, und welche Kennzahl wird anschließend geschätzt?
Tipp
Lesen Sie Simulationsfunktionen immer in Phasen: Anfangszustand, ein Durchlauf, Abbruchbedingung, Rückgabe.
set.seed(2025).simulate_panini_album() einmal aus.n_packs, total_stickers und total_cost.1.20 und führen Sie denselben Durchlauf erneut aus.1000 vollständige Panini-Durchläufe.total_cost als Variable zugänglich ist.
Vervollständigen Sie eine Funktion simulate_day(...), die einen Arbeitstag im Logistikzentrum beschreibt:
6 und 18 Uhr auf Basis exponentialverteilter Zwischenankunftszeiten.available_at, um Transporte jeweils dem zuerst freien Mitarbeitenden zuzuweisen.60 Minuten warten.2000-mal.n_staff = 2 und n_staff = 3.set.seed(...) macht Experimente reproduzierbar, nicht „wahrer“.Merksatz
Monte Carlo ist nur so gut wie das zugrunde liegende Modell. Mehr Wiederholungen reduzieren Zufallsschwankung, aber sie korrigieren keine schlechte Modellannahme.
| Fragestellung | Typische Funktion | Typischer Datentyp |
|---|---|---|
| Mittelwert gegen Referenzwert | t.test(x, mu = ...) |
metrische Stichprobe |
| Vorher-Nachher-Vergleich | t.test(x, y, paired = TRUE) |
gepaarte metrische Daten |
| Anteil gegen Referenzwert | binom.test(...) |
Erfolge/Misserfolge |
| Vergleich von Anteilen | prop.test(...) |
Kontingenztafel |
| Zusammenhang kategorialer Variablen | chisq.test(...) oder fisher.test(...) |
Häufigkeitstabelle |
| Zusammenhang metrischer Variablen | cor.test(...) |
zwei metrische Variablen |
| Mehr als zwei Gruppen ohne Normalannahme | kruskal.test(...) |
gruppierte Daten |
Achtung
Starten Sie nicht mit der Funktion, sondern mit der Frage: Geht es um Mittelwerte, Anteile, Tabellen oder metrische Zusammenhänge?
estimate: geschätzter Effekt oder Kennzahlp-value: Evidenz gegen die Nullhypotheseconf.int: plausibler Bereich für die geschätzte Größealternative: Richtung der AlternativhypotheseTipp
Ein kleiner p-Wert beantwortet nicht die Frage nach der Größe oder Relevanz eines Effekts. Lesen Sie deshalb immer auch estimate und conf.int.
t.test(...) für Vorher-Nachher-DatenArbeiten Sie mit den folgenden Daten:
vorher <- c(8.2, 7.9, 6.8, 7.1, 7.5, 6.9, 7.4, 8.1)
nachher <- c(7.8, 7.2, 6.5, 6.8, 7.0, 6.7, 7.1, 7.6)t.test(vorher, nachher, paired = TRUE) durch.Ordnen Sie zu jeder Fragestellung zunächst eine Funktion zu und führen Sie sie dann aus:
100 Würfen genau 58-mal Kopf. Passt das zu p = 0.5?mtcars einen linearen Zusammenhang zwischen wt und mpg?Bearbeiten Sie die drei Fälle vollständig:
58 Erfolge bei 100 Versuchen gegen p = 0.5 durch.wt und mpg in mtcars.Schreiben Sie zu jedem Fall jeweils:
Merksatz
Die Minimalstruktur einer guten Interpretation lautet: Fragestellung, Test, zentrales Ergebnis und fachlicher Satz dazu.
| Formel | Bedeutung |
|---|---|
y ~ x |
eine Zielvariable, ein Prädiktor |
y ~ x1 + x2 |
additive Effekte zweier Prädiktoren |
y ~ x1 * x2 |
Haupteffekte plus Interaktion |
y ~ 0 + x1 + x2 |
Modell ohne Achsenabschnitt |
y ~ x + I(x^2) |
transformierter Term direkt in der Formel |
Tipp
Lesen Sie Formeln immer als Modellbeschreibung und nicht als Rechenbefehl. Links steht das Ziel, rechts stehen die erklärenden Variablen.
lm(...) am Beispiel diamondslm(...) fittensummary(...), predict(...) und anova(...) gezielt lesenAchtung
Ein gutes Modell beginnt nicht mit lm(...), sondern mit einer sinnvollen Zielgröße, einer plausiblen Variablenauswahl und einer prüfbaren Interpretation.
diamonds_new mit lcarat und lprice.lr1 <- lm(lprice ~ lcarat, data = diamonds_new).summary(lr1).R^2.new_data <- data.frame(lcarat = log(c(0.5, 1.0))).predict(lr1, newdata = new_data).summary(lr1) und summary(lr2) über das adjustierte R^2.anova(lr2), welche Modellteile besonders viel Varianz erklären.predict(...)anova(...) als InterpretationshilfeBearbeiten Sie die folgenden Schritte zusammenhängend:
lprice ~ lcarat + cut + color + clarity.lr1.summary(...) mindestens zwei signifikante Modellteile.new_data und berechnen Sie Vorhersagen.100 Beobachtungen die Differenz aus vorhergesagtem und tatsächlichem Preis.R^2 allein reicht nicht, wichtiger ist die sinnvolle Modellinterpretation.anova(...) hilft zu sehen, welche Modellteile zusätzliche erklärte Varianz liefern.Merksatz
Ein lineares Modell ist erst dann didaktisch verstanden, wenn Sie Formel, Koeffizienten, Modellgüte und Vorhersage in Worten erklären können.
glm(..., family = binomial) als Modellworkflow0 oder 1.glm(...) funktioniert wie lm(...), benötigt aber zusätzlich family = binomial(link = "logit").Y = 1.predict(...) erhalten wir anschließend entweder den linearen Prädiktor oder direkt die Wahrscheinlichkeit.
Merksatz
Bei der logistischen Regression ist die harte Klassifikation immer nur ein zweiter Schritt. Zuerst kommt die geschätzte Wahrscheinlichkeit.
type = "link" vs. type = "response"| Ausgabe | Bedeutung | Skala | Typischer Einsatz |
|---|---|---|---|
type = "link" |
linearer Prädiktor / Logit | ganze reelle Achse | Modell intern verstehen |
type = "response" |
geschätzte Wahrscheinlichkeit | zwischen 0 und 1 |
Klassifikation und Kommunikation |
Tipp
Wenn Sie eine fachlich verständliche Aussage formulieren wollen, brauchen Sie fast immer type = "response".
fit1 <- glm(Y ~ X1 + X2, family = binomial(link = "logit"), data = df_logit).type = "link" und type = "response".0.5 in Klassen um.Nutzen Sie df_logit und fit1 für eine kleine Klassifikationsanalyse:
p_hat <- predict(fit1, type = "response").0.3, 0.5 und 0.7.glm(...) liefert zunächst Wahrscheinlichkeiten, keine endgültigen Klassen.0.5 ist eine Konvention und keine Naturkonstante.Merksatz
Die wichtigste Ausgabe eines logistischen Modells ist meist nicht 0 oder 1, sondern die geschätzte Wahrscheinlichkeit plus die Begründung, wie daraus eine Entscheidung entsteht.

Programmierung für Data Science – Vorlesung 3 – Prof. Dr. Michael Bücker