R-Hilfe in- und außerhalb von R

Niels Schwab
RLab - Skriptbasierte modulare Umweltstatistik (Universitätskolleg 2.0)
Universität Hamburg
CC BY-SA 4.0| 2017

Inhaltsverzeichnis

Ziel

In diesem Skript wird beschrieben, welche Hilfefunktionen es in R und RStudio gibt und wo es sonst noch Unterstützung beim Umgang mit den Programmen gibt.


Voraussetzungen

Um dieses Skript zu verstehen, solltest Du

  • R und RStudio installiert haben und
  • RStudio mit R verbunden haben

damit Du die hier dargestellten Beispiele selbst in R ausprobieren und so am besten nachvollziehen kannst.

Das ist alles in Installation von R und RStudio beschrieben, schaue gegenenfalls dort nach und kehre dann hierher zurück!

Für Anregungen und Kommentare zur Verbesserung ist das RLab-Team immer dankbar! Du kannst auch Fragen zu den Inhalten stellen! Nutze für all das gerne die Kommentar-Funktion!

Hilfe ,,innerhalb” von R

Zu jeder R-Funktion gibt es einen Hilfe-Text, in dem der der Umgang mit der Funktion meistens sehr detailliert beschrieben wird. Diese Hilfe enthält in der Regel auch funktionierende Beispiele, die gut als Ausgangspunkt für die eigene Arbeit verwendet werden können. Die Texte werden automatisch mit der Funktion bzw. dem Package ,,mitgeliefert”, brauchen also nicht extra installiert werden und sind auch ohne Internetverbindung erreichbar.

Aufrufen der Hilfe-Texte

Die mit R und den Packages mitgelieferten Hilfe-Texte lassen sich auf verschiedenen Wegen aufrufen:

  • In der R-Console kann ein Fragezeichen oder das Wort ,,help”, gefolgt von dem Namen der Funktion in Klammern eingeben werden, z.B. help(read.table)oder kürzer ?read.table. Daraufhin öffnet sich in RStudio unten rechts im ,,Help-Tab” der Hilfe-Text.

RStudio Hilfe-Tab

  • Alternativ kann der Name der Funktion oder des Packages, zu der der Hilfe-Text bzw. die komplette Package-Dokumentation gesucht wird, auch direkt in das Suchfeld des Hilfe-Tabs eingegeben werden. Das Suchfeld ist in dem Tab oben rechts. Links ist ein Suchfeld, mit dem der aufgerufene Hilfe-Text durchsucht werden kann (,,Find in Topic”).

RStudio-Hilfe-Tab Suchfelder

  • Auch wenn nicht mit R-Studio, sondern mit einer anderen IDE oder mit ,,R pur” gearbeitet wird, kann die Hilfe auf ähnlichen Wegen aufgerufen werden.

Gliederung der Hilfe-Texte

Die Hilfe-Texte sind in der Regel bei allen Funktionen gleich aufgebaut, aber je nach Umfang der Funktion und Qualität der Dokumentation unterschiedlich umfangreich. Ganz oben stehen zunächst der Name der Funktion, die behandelt wird und der Name des Packages, in dem die Funktion enthalten ist.

Die folgende Abbildung zeigt als Beispiel Ausschnitte aus dem Hilfetext zu der Funktion read.table(). Am anschaulichsten ist es aber, einfach in RStudio ein paar Hilfetexte zu verschiedenen Funktionen aufzurufen und selbst zu entdecken! Dazu eigenen sich z.B. diese Funktionen:

  • mean()
  • sd()
  • read.table()
  • boxplot()
  • t.test()
Du kannst diese Funktionsnamen (ohne die Klammern!) in das Suchfeld der R-Hilfe eingeben und bei den folgenden Texten zum Vergleich anschauen. Du kannst auch die Hilfe beliebiger anderer Funktionen aufrufen!

Beispiel-Hilfetext

Bei den einzelnen Abschnitten eines Hilfe-Textes handelt es sich um:

  • Description: Hier wird kurz beschrieben, was die Funktion macht bzw. wofür sie verwendet werden kann.
  • Usage: Hier sind alle Argumente aufgeführt, die angegeben werden können, um die Funktionsweise genauer zu definieren. Das ist bei read.table() z.B. die Angabe der Zeichen, die als Spalten- bzw. Dezimaltrennzeichen in der einzulesenden Tabelle verwendet wurden. Nicht nur die Argumente an sich, sondern auch ihre Standardwerte sind hier angegeben. Argumente, die einen solchen Standardwert haben, brauchen nicht unbedingt angegeben werden, um die Funktion fehlerfrei auszuführen.
  • Arguments: Die Argumente werden beschrieben, mögliche Werte (-bereiche), die für sie angegeben werden können, werden hier genannt. Es wird auch darauf hingewiesen, ob ein Argument nur optional oder zwingend notwendig ist, um die Funktion auszuführen.
  • Details: Dieser Abschnitt ist im Vergleich zu den vorherigen etwas weniger standardisiert und bietet Raum für weitere Informationen zu den Argumenten und zur Funktionsweise der Funktion. Manchmal wird hier auf mögliche Fehlerquellen oder Fehlinterpretationen der Funktionsweise oder Ergebnisse hingewiesen, Bezug zu anderen Funktionen hergestellt usw.
  • Value: Hier wird angegeben, was als Ergebnis / Output der Funktion erwartet werden kann. Dabei kann das Datenformat angegeben werden, zum Beispiel, ob es ein Vektor oder Dataframe ist oder wie eine evtl. komplex aufgebaute Ausgabe strukturiert ist.
  • References: Hier werden mögliche Quellen angegeben, aus denen z.B. Formeln, die in der Funktion verwendet wurden, stammen oder es wird Bezug auf den ursprünglichen Code, aus dem die Funktion weiterentwickelt wurde, genommen.
  • See also: In diesem Abschnitt werden vor allem Funktionen angegeben, die mit der im Hilfe-Text behandelten in Bezug stehen. Das ist bei read.table() z.B. der Verweis auf write.table() oder bei sd() (Berechnung der Standardabweichung) der Hinweis auf var() (Berechnung der Varianz). Es ist also eher nicht zu erwarten, dass diese Links direkt zum Verständnis der Funktion beitragen.
  • Examples: Dieser letzte Abschnitt der Hilfe-Texte ist einer der hilfreichsten. Hier sind beispielhaft funktionierende Verwendungsmöglichkeiten der Funktion aufgeführt. Der Code lässt sich einfach in die Console oder in ein Skript kopieren und ausprobieren. Von diesem funktionierenden Beispiel aus lassen sich oft einfach Anpassungen vornehmen, um die Funktion mit eigenen Daten und anderen Argumenten auszuführen. Dieses ,,Herumspielen” mit der Funktion und ihren Argumenten ist einer der besten Wege, um R zu lernen!
  • Mit der Eingabe der Funktion example() in die Console lassen sich alle Beispiele auf einmal ausführen. Z.B.: example(read.table)

Weitere Kapitel: Es gibt noch einige weitere Kapitel, die nicht bei jeder Funktion zum Hilfe-Text gehören. Das können z.B. ,,Note”, ,,Memory usage”, ,,Warnings” oder ,,Authors” sein.

Umfang der Hilfe-Texte

Gerade am Anfang können die englischen Hilfe-Texte zum Teil mehr verwirren als helfen. Wie immer beim Umgang mit R ist die Lernkurve steil, das heißt nach kurzer Zeit fällt es leichter, in den einzelnen Abschnitten gezielt nach der Information zu suchen, die gesucht wird. Auch ungewohnte englische Formulierungen wiederholen sich häufig und beim Gewöhnen an diese hilft das RLab-Dictionary und Glossar! [LINK]

,,Versuchen Sie nicht, alles zu verstehen, sondern beschränken Sie sich auf das, was
Sie verstehen bzw. benötigen." (Hatzinger et al. 2014:184)

Bei vielen Funktionen sind die Hilfe-Texte sehr umfangreich. Es ist am Anfang nicht unbedingt erforderlich, alle technischen Details, jede mögliche Einstellung eines Arguments, selbst die Bedeutung aller Argumente zu verstehen! In der Regel sollte die Hilfe eher verwendet werden, um aktiv nach etwas zu suchen, das gerade für die eigene Arbeit benötigt wird, als sich durchzulesen, was ,,sonst noch so” mit der Funktion gemacht werden kann. Mit einigermaßen solidem statistischen Grundlagenwissen, ist es leicht, die wesentlichen von den unwesentlichen Argumenten und Hinweisen zu unterscheiden.


Hast Du Fragen?

Unterstützung auf deutsch kannst Du zum Beispiel durch die RLab-Community erhalten. Stelle Deine Frage als Kommentar - das RLab-Team (oder andere Lernende) antworten!

Weitere ,,eingebaute” Hilfe-Funktionen

Neben der oben vorgestellten Funktion help() bzw. ? gibt es noch mindestens zwei weitere Hilfe-Funktionen, die sich von der Console aus ausführen lassen:

  • help.search("Stichwort"): Damit werden alle Hilfeseiten nach dem in der Klammer in Anführungszeichen angegeben Stichwort durchsucht. Als Ergebnis erscheinen im Hilfe-Tab Links zu den Hilfe-Texten, in denen das Stichwort vorkommt.
  • apropos("Stichwort"): Damit werden Funktionen angezeigt, die das Stichwort im Funktionsnamen haben.

  • Vignetten sind umfangreiche pdf- oder html- Dokumente, die es zu vielen R-Packages gibt. Oft tauchen sie bei der Suche im Internet auf, gezieltes Aufrufen bzw. zunächst Auflisten von R aus geht mit browseVignettes("Package-Name"). Die Vignetten aller installierten Packages lassen sich mit vignettes() anzeigen (in dem Fall ohne Argumente innerhalb der Klammer). Die Vignetten stehen auch auf den jeweiligen Homepages der Packages beim CRAN unter ,,Downloads” bereit.

  • Reference Manuals finden sich ebenfalls auf den CRAN-Seiten des Packages unter ,,Downloads” oder über die Package-Dokumentation im Hilfe-Tab. Dabei handelt es sich im Grunde um eine Aneinanderreihung aller zum Package gehörenden Hilfetexte im pdf-Format. Die lassen sich im Grunde über Browsen im Hilfe-Tab anzeigen, aber manchmal kann es gut sein, alles in einem Dokument gebündelt zu haben, z.B. um sich einen Überblick über die Möglichkeiten eines neuen Packages zu verschaffen.

Ergänzend zu diesem Digitalen Skript gibt es im RLab-Kurs ,,R-Grundlagen“ die Lesson ,,R Hilfe nutzen” - dort können die verschiedenen Möglichkeiten zum Aufrufen der Hilfetexte in RStudio bzw. R praktisch ausprobiert werden.

Weitere Infos sind u.a. in folgenden Büchern zu finden, die auch zur Erstellung dieses Digitalen Skripts verwendet wurden:


Hast Du Fragen?

Unterstützung auf deutsch kannst Du zum Beispiel durch die RLab-Community erhalten. Stelle Deine Frage als Kommentar - das RLab-Team (oder andere Lernende) antworten!

Hilfe außerhalb von R

Zusätzlich zu der in R ,,eingebauten” Hilfe gibt es zahlreiche Möglichkeiten, außerhalb von R Informationen und Unterstützung bei der Arbeit mit R zu erhalten. Dazu zählen vor allem online verfügbare Ressourcen, aber auch Printmedien und persönliche Kontakte.

Online-Hilfe

Sehr gute, umfangreiche Unterstützung bei der Arbeit mit R lässt sich im Internet finden. (Fast) jede Frage, die Du hast, wird schon einmal jemand gehabt haben. Online ist Hilfe am einfachsten durch gezielte Suche mit einer Suchmaschine zu erhalten. Dabei kannst Du gute Ergebnisse erzielen, wenn du den Buchstaben ,,R” gefolgt von Deiner Frage in Stichworten eingibst. Dazu zählt auch der Name der Funktion oder evtl. des Packages, zu dem die Funktion gehört.

Wenn es darum geht, die Ursache für eine Fehlermeldung zu finden, kann auch die Meldung oder ein prägnanter Teil davon aus der Console direkt zur Suchmaschine kopiert werden. Dabei ist allerdings zu beachten, dass Fehlermeldungen oft recht allgemein formuliert sind und unterschiedliche Ursachen die selbe Fehlermeldung auslösen können.

Die meisten Suchanfragen werden Treffer von R-Hilfeforen ausgeben. Dazu zählen u.a. das Forum bzw. die Community Stack Overflow, Posts im Archiv der R-help Mailing List und andere. Es gibt auch einige Internetseiten, die grundlegende Funktionen von R vermitteln, z.B. Quick-R. Auch diese Seiten tauchen häufig bei auf R bezogenen Suchen auf. Zum Teil werden auch die auf zahlreichen Seiten gespiegelten R-Hilfe-Texte oder Links zu den Vignetten angezeigt.

Einige Beispiel für mögliche Suchphrasen:

  • r how to load excel sheet
  • r merge data frames
  • r t-test
  • r daten einlesen
  • r korrelationen berechnen
  • r error “attempt to set an attribute on NULL”

Da die meisten und am stärksten frequentierten Foren und Seiten, die sich mit R beschäftigen englischsprachig sind, werden in der Regel mehr und bessere Treffer mit englischen Anfragen ausgegeben. Es ist allerdings gerade bei einfachen Problemen am Anfang auch möglich, gute Ergebnisse mit einer Anfrage auf Deutsch zu erzielen. - Einfach mal mit den Beispielen oben oder eigenen Fragen ausprobieren!

Die Suchphrase r error “attempt to set an attribute on NULL” beinhaltet eine direkt aus der R-Console kopierte Fehlermeldung, ergänzt durch ,,r” und ,,error”. Es macht Sinn, die Fehlermeldung in der Suchmaschine in Anführungszeichen zu setzten, damit nach genau dieser Meldung gesucht wird. So können Hinweise zur Behebung des Fehlers gefunden werden, da andere Nutzende bereits Probleme mit dieser Fehlermeldung in den Foren gepostet haben.

Empfehlenswerte, ,,privacy-freundliche” Suchmaschinen ohne ,,Filterblase” sind z.B.:


Hast Du Fragen?

Unterstützung auf deutsch kannst Du zum Beispiel durch die RLab-Community erhalten. Stelle Deine Frage als Kommentar - das RLab-Team (oder andere Lernende) antworten!

Weitere Ressourcen

Weitere Informationen Rund um R gibt es auch in einer Vielzahl von gedruckten Medien, die häufig elektronisch, z.B. als pdf, zur Verfügung stehen. Dazu zählen:

  • Bücher
  • Andere Dokumente, z.B. sogenannte ,,Cheat Sheets”, das sind wenige Seiten umfassende Dokumente, die sehr anschaulich die wichtigsten Funktionen und ihre Anwendung für bestimmte häufige Arbeitsschritte darstellen.
  • Einige überwiegend deutschsprachige Beispiel-Bücher und -Dokumente findest Du im RLab Download-Bereich.
  • Neben der online erreichbaren ,,R-Community” (s.o.) gibt es natürlich auch die Möglichkeit, persönlich Kontakt zu anderen Leuten, die R anwenden, aufzunehmen und Probleme gemeinsam zu diskutieren. Das können andere Studierende oder Lehrende sein und neben der direkten Kontaktaufnahme besteht z.B. die Möglichkeit durch einen Kommentar, in dem die Frage ganz kurz angerissen wird, ein persönliches Treffen zu initiieren.
  • Alle, die R nutzen, sollten bereit sein, anderen zu helfen. Die Nutzung der freien und quelloffenen Software lebt nicht nur im Bereich der Entwicklung von gegenseitiger Hilfe und Unterstützung! Auch schon zu Beginn, mit ersten R-Kenntnissen können fehlende Kommata oder Klammern in Skripten Fortgeschrittener gefunden werden!
  • Diese Hilsbereitschaft ist umso wichtiger, als dass es dringend zu empfehlen ist, sich bei der Fehlersuche ein eher kurzes Zeitlimit zu setzen. Nach z.B. 10 Minuten macht es Sinn, jemanden auf das Skript schauen zu lassen. Meistens werden die einfachsten eigenen Fehler nicht gesehen, während sie anderen direkt ins Auge fallen. Auch hier gilt: Alle sollten bereit sein, sich Skripte von anderen anzuschauen - schließlich möchtest Du auch einmal selbst von dieser Unterstützung profitieren!

Hast Du Fragen?

Unterstützung auf deutsch kannst Du zum Beispiel durch die RLab-Community erhalten. Stelle Deine Frage als Kommentar - das RLab-Team (oder andere Lernende) antworten!