12 KI-Unterstützung in R
Die rapide Entwicklung von KI-Assistenten hat die Art und Weise, wie Code geschrieben wird, grundlegend verändert. Große Sprachmodelle wie ChatGPT oder Claude können R-Code generieren, erklären und debuggen - und das oft mit beeindruckender Qualität. Es stellt sich daher die berechtigte Frage, warum es überhaupt noch notwendig ist, R selbst zu erlernen.
Die Antwort liegt in der Natur von KI-generierten Lösungen: KI-Assistenten produzieren plausibler klingenden Code, der jedoch nicht immer korrekt ist. Ohne ein grundlegendes Verständnis von R-Syntax, Datenstrukturen und den verwendeten Packages ist es schwer möglich, Fehler im generierten Code zu erkennen, Ergebnisse kritisch zu hinterfragen oder KI-Vorschläge sinnvoll an die eigene Problemstellung anzupassen. KI ist daher am nützlichsten als Werkzeug für jene, die bereits über solide Grundkenntnisse verfügen - sie beschleunigt und unterstützt die Arbeit, ersetzt aber kein eigenes Verständnis. Die in diesem Kurs erlernten Grundlagen sind damit nicht weniger relevant geworden, sondern die Voraussetzung dafür, KI-Assistenten effektiv und kritisch einzusetzen.
12.1 Datenschutz und verantwortungsvoller Umgang
Der Einsatz von KI-Assistenten in der Datenanalyse wirft wichtige Datenschutzfragen auf, die vor allem im wissenschaftlichen und professionellen Kontext nicht ignoriert werden dürfen. Bei der Nutzung von chat-basierten Assistenten wie ChatGPT oder Claude über den Browser werden alle eingegebenen Inhalte — also auch Code und Daten — an die Server der jeweiligen Anbieter übertragen und dort verarbeitet. Je nach Anbieter und gewähltem Tarif können diese Eingaben zudem für das weitere Training der Modelle verwendet werden.
Das bedeutet konkret: Datensätze mit personenbezogenen oder anderweitig sensiblen Daten sollten niemals direkt in einen chat-basierten KI-Assistenten eingefügt werden. Das betrifft etwa Umfragedaten mit identifizierbaren Personen, Unternehmensdaten unter Geheimhaltungspflicht, Gesundheits- oder Einkommensdaten sowie alle Daten, die unter die DSGVO oder andere Datenschutzregelungen fallen. Ein versehentliches Einfügen von Rohdaten in ein Chat-Fenster kann dabei nicht rückgängig gemacht werden.
Für die praktische Arbeit empfehlen sich folgende Vorsichtsmaßnahmen:
Nur Struktur, keine Daten teilen: Statt echte Daten einzufügen, reicht es in den meisten Fällen, die Struktur des Datensatzes zu beschreiben (Variablen und Variablentyp).
Synthetische Beispieldaten verwenden: Für Code-Fragen können Beispieldaten erstellt werden, die dieselbe Struktur wie die echten Daten haben, aber keine realen Werte enthalten:
- Unternehmens- und Hochschulrichtlinien beachten: Viele Unternehmen und Forschungseinrichtungen haben eigene Richtlinien zum Einsatz von KI-Tools. Im Zweifel immer vorab klären, welche Tools für welche Daten zugelassen sind.
-
API-Nutzung und Datenschutzeinstellungen prüfen: Bei der Nutzung über die API (etwa über das
chattr-Package) gelten gesonderte Datenschutzbestimmungen, die sich von den Browser-Versionen unterscheiden können. Anthropic und OpenAI bieten etwa für API-Nutzer standardmäßig an, Eingaben nicht für das Modelltraining zu verwenden — die genauen Bedingungen sollten jedoch immer in den aktuellen Nutzungsbedingungen nachgelesen werden.
Die Nutzung von KI-Assistenten mit sensiblen Daten kann nicht nur datenschutzrechtliche Konsequenzen haben, sondern auch gegen Forschungsethik-Richtlinien oder Vertraulichkeitsvereinbarungen verstoßen.
12.2 Chat-basierte KI-Assistenten
Die einfachste Möglichkeit, KI für die R-Programmierung zu nutzen, sind chat-basierte Assistenten, die über den Browser zugänglich sind. Die bekanntesten sind ChatGPT (OpenAI, chatgpt.com) und Claude (Anthropic, claude.ai). Für Coding-Aufgaben ist Claude derzeit die empfehlenswertere Wahl: Das Modell produziert in der Regel saubereren, besser kommentierten Code, hält sich enger an tidyverse-Konventionen und gibt häufiger explizite Hinweise, wenn eine Anfrage zu unspezifisch ist oder mehrere Lösungsansätze möglich sind. Beide Assistenten sind in einer kostenlosen Basisversion verfügbar, die für vielen Coding-Aufgaben ausreichend ist.
Zu den US-amerikanischen KI-Unternehmen kann Mistral (mistral.ai) eine interessante Alternative sein. Mistral ist ein französisches KI-Unternehmen, dessen Modelle auf europäischen Servern betrieben werden und damit der DSGVO unterliegen — ein relevanter Vorteil gegenüber US-amerikanischen Anbietern, wenn datenschutzrechtliche Anforderungen eine Rolle spielen. Über le Chat steht eine kostenlose Chat-Oberfläche zur Verfügung. Die Coding-Qualität von Mistral ist kompetitiv mit ChatGPT und Claude.
Für Fernuni-Studierende haben über KI:connect.nrw Zugang zu fortgeschritteneren Modellen von OpenAI, Llama und Mistral. Der Log-In läuft dabei über die Single-Sign-On-Seite der Fernuni. Für mehr Informationen, siehe hier.
Ein paar Hinweise für die effektive Nutzung von Chat-Assistenten für R:
- Kontext mitliefern: Je mehr Informationen über den Datensatz, die verwendeten Packages und das gewünschte Ergebnis angegeben werden, desto präziser ist die Antwort. Fehlermeldungen immer vollständig kopieren.
- Iterativ arbeiten: KI-Assistenten liefern selten auf Anhieb die perfekte Lösung. Nachfragen, Korrekturen einfordern und Lösungen schrittweise verfeinern ist normal und oft effizienter als eine sehr lange initiale Anfrage.
- Code verstehen, nicht nur kopieren: Generierten Code immer verstehen, bevor er verwendet wird — insbesondere bei Datenaufbereitungen und statistischen Analysen, wo stille Fehler schwer zu erkennen sind.
-
Auf Halluzinationen achten: KI-Assistenten erfinden gelegentlich Funktionen oder Argumente, die nicht existieren. Im Zweifel die Dokumentation (
?funktion) oder CRAN konsultieren.
Die Qualität von KI-generierten R-Code hängt stark von der Qualität der Anfrage ab. Ein guter Prompt für R-Coding-Aufgaben enthält typischerweise: das Ziel in einem Satz, eine kurze Beschreibung des Datensatzes (Variablennamen, Typen), die verwendeten Packages (z.B. tidyverse), und — bei Fehlern — die vollständige Fehlermeldung. Beispiel:
“Ich verwende tidyverse in R. Mein Datensatz
wage1hat die Variablenwage(numerisch) undfemale(0/1). Ich möchte einen Boxplot vonwagenachfemaleerstellen und die x-Achse mit ‘Männer’/‘Frauen’ beschriften. Hier ist mein bisheriger Code: [Code einfügen]”
12.3 GitHub Copilot in RStudio
GitHub Copilot ist ein KI-Assistent, der direkt in die Entwicklungsumgebung integriert ist und Code-Vorschläge in Echtzeit macht — während des Tippens, nicht erst nach einer expliziten Anfrage. Copilot analysiert den bereits geschriebenen Code und Kommentare und schlägt automatisch sinnvolle Fortsetzungen vor, die mit der Tab-Taste übernommen werden können.
Seit RStudio Version 2023.09 ist GitHub Copilot direkt in RStudio integriert und kann über Tools → Global Options → Copilot aktiviert werden. Voraussetzung ist ein GitHub-Account mit aktiviertem Copilot-Abonnement (kostenpflichtig, mit kostenlosem Kontingent für Studierende über GitHub Education). Für weitere Informationen, siehe den RStudio User Guide.
12.4 Das chattr-Package
Das Package chattr ermöglicht die direkte Integration von KI-Assistenten in RStudio, ohne den Browser öffnen zu müssen. Es unterstützt verschiedene Modelle, darunter OpenAI (ChatGPT) und Anthropic (Claude), und kann sowohl als RStudio-Addin als auch direkt in der Konsole verwendet werden:
install.packages("chattr")
library(chattr)
# Interaktive Chat-Oberfläche in RStudio öffnen
chattr_app()
# Direkte Anfrage in der Konsole
chattr("Schreib mir einen ggplot-Code für ein Histogramm der Variable wage")Vor der ersten Verwendung muss ein API-Key für das gewünschte Modell hinterlegt werden. Eine Schritt-für-Schritt-Anleitung dazu findet sich in der chattr-Dokumentation.