Schwerpunkte
Funktionales Programmieren
- Benutzerdefinierte Funktionen schreiben und anwenden
- Anonyme Funktionen, Parameter-Übergabe, Fehlerbehandlung
- Funktionen, die Funktionen als Argumente übernehmen
- Funktionen, die Funktionen als Ergebnis liefern
- Einführung / Wiederholung: apply-Funktionen in Base R
- map-Funktionen aus dem purrr-Paket
- Anwendungsbeispiel: viele statistische Modelle gleichzeitig aufstellen und Ergebnisse
elegant weiterverarbeiten mit wenigen Code-Zeilen
Fehlerbehebung: Debugging in RStudio
Effizient programmieren in R: Möglichkeiten, R-Code zu beschleunigen
- Laufzeit von R-Code messen: system.time() und microbenchmark()
- Strategien zur Optimierung von R-Code, Praxisbeispiele
- Profiling, um Flaschenhälse (langsame Code-Abschnitte) zu lokalisieren
- Parallele Programmierung: Mehrere Prozessorkerne / Cluster nutzen
- Verteilung der Lasten an die Arbeiter: Load Balancing
- Erkennen, ob R-Code zur Parallelisierung geeignet ist
- Pakete zur Bearbeitung großer Datenmengen
Einführung in objektorientiertes Programmieren mit R (S3-Klassen)
- Programmierbeispiel mit einfacher Spiel-Simulation und benutzerdefinierter Print-Methode
Eigene R-Pakete erstellen in RStudio
- Ordnerstruktur von R-Paketen
- Eigene Funktionen schreiben und dokumentieren; R-interne Hilfefunktion nutzen
- Pakete, die die Paket-Erstellung unterstützen: devtools, usethis, roxygen2, testthat
- Paket installieren, testen, weiterentwickeln