R-Programmierung für Fortgeschrittene

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

Laufzeiten von R-Code-Abschnitten vergleichen, Code optimieren (Microbenchmark)

Effizient programmieren in R

  • 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

Einführung in objektorientiertes Programmieren mit R (S3-Klassen)

Programmierbeispiel mit einfacher Spiel-Simulation und benutzerdefinierter Print-Methode

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