Beispiellösungen zur Aufgabe: Prompt Engineering
KI Workshop – Part 2 | Dr. Julien P. Irmer
Setting
Du möchtest für die Präregistrierung schon mal ein Analyseskript vorbereiten und weißt, wie der Datensatz aussehen wird.
Datensatz
df mit N = 200 Studierenden, 4 Messzeitpunkte
| Variable | Beschreibung |
|---|---|
id |
Personen-ID |
time |
Messzeitpunkt (1–4) |
group |
Bedingung (control / intervention) |
prokrastination |
Prokrastinations-Score |
self_efficacy |
Selbstwirksamkeit |
gpa |
Notendurchschnitt |
Hypothese
Die Intervention reduziert Prokrastination über die Zeit stärker als die Kontrollbedingung.
Aufgabenstellung
Verbessere folgenden Prompt, indem Du 4–6 der Bausteine verwendest:
„Schreibe ein R-Skript, das meine Hypothese testet.”
Die 6 Bausteine sind: Task · Context · Exemplars · Persona · Format · Tone
Musterlösungen
❌ Variante 0 – Schlechter Ausgangsprompt
Schreibe ein R-Skript, das meine Hypothese testet.
Variante 1 – Wenig Statistik- und Programmierwissen
[Persona] Du bist ein Statistikassistent.
[Context] Ich habe einen Datensatz df mit N=200 Studierenden und 4 Messzeitpunkten. Variablen: id, time (1–4), group (control/intervention), prokrastination, self_efficacy, gpa. Ich schreibe gerade meine Präregistrierung und möchte ein Analyseskript vorbereiten.
[Task] Erkläre mir welche Methode ich verwenden soll und schreibe ein einfaches R-Skript das meine Hypothese testet: Die Intervention reduziert Prokrastination über die Zeit stärker als die Kontrollbedingung.
[Format] Kommentiere jeden Schritt auf Deutsch.
[Tone] Erkläre so, dass jemand ohne tiefes Statistikwissen es versteht.
Variante 2 – Viel Statistikwissen, Base-R Kenntnisse
[Persona] Du bist ein erfahrener R-Programmierer mit Kenntnissen in Längsschnittanalysen.
[Context] Ich habe einen Längsschnittdatensatz df (N=200, 4 Messzeitpunkte). Variablen: id, time (1–4), group (control/intervention), prokrastination, self_efficacy, gpa. Ich erstelle ein Präregistrierungsskript für folgende Hypothese: Die Intervention reduziert Prokrastination über die Zeit stärker als die Kontrollbedingung.
[Task] Schreibe ein R-Skript mit einem gemischten linearen Modell (lme4) das den Interaktionseffekt time × group auf prokrastination testet, mit Random Intercepts für id.
[Format] Nutze Base-R ohne Pipes. Kommentiere alle Zwischenschritte.
[Tone] Präzise und direkt.
Variante 3 – Sehr gutes Statistik- und Programmierwissen
[Persona] Du bist ein erfahrener Methodenforscher mit Expertise in gemischten linearen Modellen und R.
[Context] Ich habe einen Längsschnittdatensatz df (N=200, 4 Messzeitpunkte). Variablen: id, time (1–4), group (control/intervention), prokrastination, self_efficacy, gpa. Ich präregistriere folgende Hypothese: Die Intervention reduziert Prokrastination über die Zeit stärker als die Kontrollbedingung.
[Task] Schreibe ein kommentiertes Analyseskript mit: (1) Random-Intercept-Slope-Modell: prokrastination ~ time * group + (1 + time | id) (2) Modellvergleich mit anova() gegen Nullmodell (3) Ergebnistabelle mit broom.mixed::tidy(conf.int = TRUE) (4) Export als CSV
[Exemplar] Die Ergebnistabelle soll so aussehen: term | estimate | conf.low | conf.high | p.value
[Format] Tidyverse-Stil mit Pipes, kommentierte Zwischenschritte.
[Tone] Technisch präzise, publikationsreif.
Variante 4 – Vollständig spezifizierter Experten-Prompt
Dieser Prompt lässt dem Modell keine methodischen Entscheidungen mehr offen. Alle kritischen Punkte sind explizit vorgegeben — einschließlich der Punkte, bei denen Standardlösungen häufig scheitern.
[Persona] Du bist ein erfahrener Methodenforscher mit Expertise in gemischten linearen Modellen, Längsschnittdesigns und R. Du verwendest Base-R für Datenaufbereitung, lme4 und lmerTest für Modelle, ggplot2 für Visualisierung. Keine tidyverse-Pipes.
[Context] Datensatz df (Long-Format, N=200 Studierende, 4 Messzeitpunkte). Variablen: id (Personen-ID), time (1–4, numerisch, äquidistant), group (control/intervention), prokrastination (kontinuierlich), self_efficacy, gpa. Design: Längsschnitt-RCT mit Messwiederholung. Hypothese: Die Intervention reduziert Prokrastination über die Zeit stärker als die Kontrollbedingung (Zeit × Gruppe Interaktionseffekt).
[Task] Schreibe ein vollständiges, kommentiertes Analyseskript mit folgenden Schritten:
Datenvorbereitung:
- id als Faktor
- group als Faktor, “control” als Referenzkategorie (relevel)
- time numerisch belassen (lineares Wachstumsmodell, nicht als Faktor)
ICC berechnen (Nullmodell): mod0 <- lmer(prokrastination ~ 1 + (1 | id), REML = TRUE) ICC = tau00 / (tau00 + sigma²) aus VarCorr()
Hauptmodell (Random Intercept + Slope, REML = TRUE für finale Schätzung): mod <- lmer(prokrastination ~ time * group + (1 + time | id), REML = TRUE) Falls Konvergenzproblem: Fallback auf (1 | id) und das vermerken
Hypothesentest via Likelihood-Ratio-Test (LRT) — NICHT via Type-III-ANOVA: mod_voll <- lmer(prokrastination ~ time * group + (1 | id), REML = FALSE) mod_ohne <- lmer(prokrastination ~ time + group + (1 | id), REML = FALSE) anova(mod_ohne, mod_voll) Begründung im Kommentar: LRT umgeht das Kontrastproblem bei Type-III-SS
Effektgröße: MuMIn::r.squaredGLMM(mod) → marginales und konditionelles R²
Ergebnistabelle mit lmerTest::summary() und konfidenzintervalle via confint()
Visualisierung: Verlaufsplot mit Mittelwert ± 95%-KI pro Gruppe und Zeitpunkt (ggplot2)
[Exemplar] Ausgabe des LRT soll so aussehen: Df AIC BIC logLik deviance Chisq Chi_df Pr(>Chisq)
[Format] Base-R + lme4 + lmerTest + MuMIn + ggplot2. Keine Pipes. Jeden Schritt auf PhD-Niveau auf Deutsch kommentieren. Begründe alle methodischen Entscheidungen im Code-Kommentar.
[Tone] Technisch präzise, publikationsreif. Keine unnötigen Einleitungssätze.
Kernbotschaft
Alle vier Varianten bekommen einen syntaktisch brauchbaren Output — aber nur Variante 4 schließt die methodischen Lücken, die ohne Fachkenntnis unsichtbar bleiben: die Kodierung von time, die Überparametrisierung der Random Effects, das Kontrastproblem bei Type-III-SS, die richtige Effektgröße.
Der Unterschied liegt nicht in der KI — sondern im Domänenwissen des Nutzers.
„Wer mehr zum Thema weiß, kann den Output besser beurteilen”
— Nestler et al. (2026)