Skip to content

Latest commit

 

History

History
57 lines (33 loc) · 2.34 KB

Readme.md

File metadata and controls

57 lines (33 loc) · 2.34 KB

Package Development

Materialien für eine Einführung zum Thema Package-Entwicklung in R. Die Einführung basiert auf einem useR2019-Tutorial:

https://github.com/jennybc/pkg-dev-tutorial

1. Einführung

Package-Workflow https://github.com/jennybc/pkg-dev-tutorial/blob/master/intro-basic-workflow.pdf

Documentation https://github.com/jennybc/pkg-dev-tutorial/blob/master/document-share.pdf

2. Wir entwickeln gemeinsam ein Package

Wir wollen gemeinsam ein Package entwickeln, welches es ermöglicht, Datensätze in Excel-Dateien mit minimaler Formatierung abzuspeichern. Im Zuge des Tutorials werden wir den Entwicklungsprozess gemeinsam durchgehen, die Struktur unseres packages inspizieren und die Dokumentation dazu generieren.

Ziel des Tutorials ist es, den Package-Entwicklungsprozess anhand einer einfachen Beispiel-Funktion kennenzulernen.

Notwendige Packages

Wir benötigen zwei Packages, um unser eigenes Package zu erstellen.

  • devtools enthält Werkzeuge für die Package-Entwicklung.
  • Das openxlsx-package benötigen wir für unsere Excels-Erstellungs-Funktion, die wir in unserem Package anbieten wollen.
install.packages("devtools")
install.packages("openxslx")

library("devtools")
library("openxlsx")

Das usethis-Package erleichtert den Entwicklungsprozess massgeblich (wird beim laden von devtools mitgeladen).

In einem ersten Schritt starten wir ein neues Projekt für unser Package.

usethis::create_package("fancyexcel")

Aufgaben:

  1. Überlegt euch ein kurzes Beispiel für die Verwendung unserer 'fancyexcel' Funktion mit einem Testdatensatz und fügt es unter @examples hinzu document & share Präsentation, Folie 5

  2. Tragt euch als Maintainer im Description-File ein.

  3. Erzeugt die Dokumentation neu via devtools::document()

Extras:

  1. Erweitert die fancyexcel Funktion damit auch eine Quelle angegeben werden kann. Dafür könnt ihr einen neuen source - parameter einführen, der analog zum Titel übergeben werden kann. Führt das Argument als neuen @param in der Dokumentation ein.

  2. Erzeugt eine pkgdown-Seite siehe document & share Präsentation, Folie 28