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
- Laufzeit von R-Code messen: system.time(), microbenchmark() und bench::mark()
- 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
- Paket-Empfehlungen zum Umgang mit großen Datenmengen
Optional: Einführung in objektorientiertes Programmieren mit R (S3-Klassen)
Programmierbeispiel mit einfacher Spiel-Simulation und benutzerdefinierter Print-Methode
Optional: R und externe Datenquellen: Excel, Datenbanken
- Datenimport aus Excel
- Datenexport nach Excel; Excelblätter aus R heraus bearbeiten
- Tipps, Strategien und Paketempfehlungen zur Datenbankanbindung mit R
- Effiziente Visualisierung von Daten aus Datenbanken
Eigene R-Pakete erstellen in RStudio
- Warum und wann es sinnvoll ist, eigene Pakete zu erstellen
- Ordnerstruktur von R-Paketen
- Eigene Funktionen schreiben und dokumentieren; R-interne Hilfefunktionen nutzen
- Pakete, die die Paket-Erstellung unterstützen: devtools, usethis, roxygen2, testthat
- Paket installieren, testen, weiterentwickeln
Optional: Tidy Evaluation
- Kurzer Überblick über einige tidyverse-Funktionen und Vergleich zu Base R
- Was ist tidy evaluation und wozu brauchen wir sie?
- Praxisbeispiele, Programmieren mit dplyr und ggplot2
Empfohlene Seminardauer: 3 Tage
Ich freue mich auf Ihre Anfrage!
Zurück zu R-Schulungen: Übersicht über Seminare / Workshops / Module