RStudio und R-Skripte

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

Inhaltsverzeichnis

Ziel

In diesem Skript erfährst Du, was der Unterschied zwischen R und RStudio ist, welche Funktionen die vier Fenster von RStudio bieten und wie RStudio den Umgang mit R erleichtert. Dabei werden auch Hinweise zur Arbeit mit R-Skripten gegeben.

Voraussetzungen

Um dieses Skript zu verstehen, solltest Du

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

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

Am besten öffnest Du parallel zu dem Digitalen Skript RStudio, so dass Du die im Folgenden vorgestellten Funktionalitäten direkt ausprobieren kannst.

Dieses Digitale Skript versucht, einen Überblick über RStudio und die Arbeit mit R-Skripten zu geben. Für Anregungen und Kommentare zur Verbeserung ist das RLab-Team immer dankbar! Du kannst auch Fragen zu den Inhalten stellen! Nutze für all das gerne die Kommentar-Funktion!

Warum R und RStudio?

RStudio ist ein Programm, mit dem sich R bedienen bzw. steuern lässt. Es ist vergleichbar mit dem Cockpit eines Flugzeugs oder dem Armaturenbrett eines Autos: Hier ,,laufen Fäden zusammen”, die nicht direkt zum Programm R gehören, aber zur komfortablen Arbeit damit beitragen. R selbst ist mit dem Motor eines Autos oder dem Triebwerk eines Flugzeugs vergleichbar, hier wird die eigentliche Arbeit, die Rechenleistung, erbracht.

RStudio-Oberfläche

Ein Programm wie RStudio wird als Integrierte Entwicklungsumgebung oder Grafische Benutzeroberfläche bezeichnet. Auch R selbst hat eine Benutzeroberfläche, diese ist allerdings sehr spartanisch ausgestattet. Viele Aktionen, die nicht mit Rechnungen an sich zu tun haben, sind damit weniger komfortabel, andere gar nicht möglich. Dazu gehört zum Beispiel das Erstellen von Dokumenten mit eingebetteten, mittels R gerechneten Analysen oder die Anzeige des Inhalts des ,,Environments”, des ,,Arbeitsspeichers” von R.

Es gibt es andere, seltener genutzte und weniger dynamisch entwickelte Grafische Benutzeroberflächen für R, die im Kapitel ,,Alternativen zu RStudio” vorgestellt werden.

RStudio ist eher eine Integrierte Entwicklungsumgebung (IDE, englisch: integrated development environment) als eine Graphische Benutzeroberfläche (GUI, englisch: graphical user interface), da verschiedene Werkzeuge zur Ein- und Ausgabe zusammen (,,integriert”) bereitgestellt werden, so dass verschiedene Funktionen effizienter und komfortabler bedient werden können. Einige dieser Funktionen, unter anderem auch solche, die ansonsten direkt als R-Code ausgeführt werden müssten, sind in RStudio durch Menüs und Buttons per Maus zu steuern, daher besitzt das Programm auch Eigenschaften einer GUI. Für die Nutzung von RStudio und das Verständnis dieses Digitalen Skripts sind diese feinen Unterschiede irrelevant.


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!

Funktionen / Vorteile von RStudio

RStudio bietet eine Vielzahl von Funktionen, die die Arbeit mit R erleichtern. Sie sind im ,,puren” R-Programm nicht oder weitaus weniger komfortabel bedienbar enthalten. Die wichtigsten ,,Zusatzfunktionen”, die RStudio bietet, werden auf den folgenden Seiten des Digitalen Skripts detailliert vorgestellt. In der Slideshow unterhalb werden die Funktionen zunächst kurz gezeigt:



Einen kurzen englischsprachigen Überblick über die RStudio-Fenster gibt das folgende Video:


,,RStudio Overview”, Dauer 1:30 Min., von RStudio, Inc. auf Vimeo.


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!

Die RStudio-Fenster im Detail

In diesem Kapitel werden die Funktionen der vier RStudio-Fenster und der Menü-Leiste detailliert beschrieben:

RStudio-Oberfläche beschriftet

Wenn noch nicht geschehen, solltest Du jetzt parallel zu dem Digitalen Skript RStudio öffnen, so dass Du die im Folgenden vorgestellten Funktionalitäten direkt ausprobieren kannst. Du kannst einfach oben weiter blättern oder mit einem der folgenden Links Inhalte gezielt aufrufen.

Bei der Console handelt es sich um eine Art ,,Einblendung” des ,,puren” R-Programms. Hier werden die an R gesendeten Befehle verarbeitet und Ergebnisse angezeigt. Wenn es sich bei den Ergebnissen um Abbildungen oder um direkt in Objekte geschriebene Daten handelt, erscheinen sie im ,,Plot-Fenster” bzw. im ,,Environment”. Auf diese RStudio-Teile wird später eingegangen.

So sieht R ,,pur” aus:

R ,,pur"

Wie sich R ,,pur” aufrufen lässt, wird später beschrieben.


So sieht die R-Console in RStudio aus:

R in RStudio

Rechenaufträge können auf zwei Arten in die Console eingegeben werden:

Zum einen kann direkt in der Console getippt werden und Befehle durch Drücken von ,,Enter” abgeschickt werden. Zuvor abgeschickte Befehle können durch Drücken der ,,Pfeil-nach-oben”-Taste noch einmal aufgerufen und mit ,,Enter” abgeschickt werden. Das geht allerdings nur für einen Befehl auf einmal und nur solange RStudio nicht geschlossen wird.

Console mit Funktion und Ergebnis

Zum anderen können Befehle in ein sogenanntes Skript geschrieben werden und dann einzeln oder ,,am Stück” an die Console gesendet werden. Das Skript ist ein Text-Dokument, das im Skript-Fenster, oberhalb der Console, erstellt werden kann. Vorteil ist, dass sich dieses Textdokument speichern lässt, so dass auch nach dem Schließen von RStudio wieder darauf zugegriffen werden kann, um die Rechnungen nochmals auszuführen oder neue, auf dem vorherigen Skript basierende Rechnungen durchzuführen. Auf das Skript-Fenster wird später genauer eingegangen.

Bei der Bearbeitung der RLab-Kurse wird ohne Skript gearbeitet, die Antworten bzw. Funktionen werden direkt in die Console eingegeben.

Nach dem Start von RStudio wird in der Console die Versionsnummer und der Versionsname der mit RStudio verbundenen R-Version angezeigt. So kann geprüft werden, ob die aktuellste Version verwendet wird oder eine evtl. auf dem Rechner befindliche, ältere R-Version verbunden ist. Die R-Version lässt sich in den ,,Global Options” festlegen.

Console mit R-Versionsnummer und -name

Wenn R bereit ist, ,,Aufträge” entgegenzunehmen, ist dies am ,,größer als”-Zeichen erkennbar:

>

Wenn R mit Rechnungen beschäftigt ist, erscheint oben rechts im Consolen-Fenster ein Stop-Schild-Symbol. Durch Klick auf dieses Symbol ist es möglich, eine Rechnung abzubrechen. Bei vielen Rechnungen erscheint dieses Symbol nicht, da sie nur sehr kurz dauern.

RStudio Stoppschild

Neben den Fenster-Symbolen oben rechts, mit denen sich das Consolen-Fenster minimieren bzw. maximieren lässt, gibt es oben links noch ein Pfeil-Symbol. Durch einen Klick darauf wird im unteren rechten RStudio-Fenster das ,,working directory” angezeigt. Dabei handelt es sich um das Verzeichnis, in dem R einzulesende Dateien erwartet und in das Ergebnisse ausgegeben werden - sofern nicht etwas anderes angegeben wurde.

RStudio Pfeil working directory

Das ,,working directory” lässt sich auch per R-Code anzeigen und einstellen:

 getwd() # Anzeigen Dateipfads des aktuellen ,,working directories”
 setwd() # Festlegen des ,,working directories” - Angabe des Dateipfads in den Klammern, z.B.:
 setwd(dir = "E:/RRR/R2016") # working directory ,,R2016” auf Laufwerk ,,E:” im Ordner ,,RRR”

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!

Das Fenster lässt sich per Menü mit

  • ,,File” - ,,New File” - ,,R Script” öffnen, alternativ per
  • ,,New File”-Button in der Symbolleiste oder mit der Tastenkombination
  • ,,Strg” + ,,Shift” + ,,n”.
  • RStudio New File

    Ein Skript ist eine einfache Textdatei, in die R-Befehle eingetragen werden können, die dann zur Ausführung an die Console geschickt werden. Zusätzlich lassen sich auch beliebige Kommentare zu diesen Funktionen eintragen, z.B. Hinweise zur Nutzung der Funktion oder zu dem damit errechneten Ergebnis. Das können kurze Notizen oder längere Texte sein, vieles ist möglich und kann individuell gestaltet werden. Es lassen sich auch Überschriften einfügen, um die einzelnen Teile eines Skripts zu strukturieren und so Inhalte leichter wieder zu finden.

    kommentiertes Skript

    Das Skript wird gespeichert und kann so immer wieder verwendet, verändert oder als Grundlage für neue Skript-Entwicklungen genommen werden. Es ist sogar möglich, von einem Skript auf ein anderes zuzugreifen, um z.B. immer wieder vorkommende Routineschritte nicht in jedes neue Skript komplett mit aufnehmen zu müssen.

    Die R-Skripte erhalten beim Speichern die Endung ,,.R”, eine Skript-Datei kann zum Beispiel ,,mein_erstes_skript.R” heißen. Das ,,.R” hat den Vorteil, dass sie sich mit einem Doppelklick direkt in RStudio öffnen lassen. Sie sind aber auch ohne weiteres mit anderen Programmen, wie z.B. dem Editor / Notepad von Windows über ,,Datei” - ,,Öffnen…” zu öffnen.

    Damit die im Skript stehenden Funktionen von R verarbeitet werden und die damit beabsichtigten Rechnungen durchgeführt werden, wird das Skript bzw. der Inhalt des Skripts an die Console geschickt. Das geht auf verschiedenen Wegen, nachdem das Skript in RStudio geöffnet wurde:

    • Wenn sich der Cursor an einer beliebigen Stelle in einer Skript-Zeile befindet, kannst Du einfach ,,Strg” und dann bei gehaltener ,,Strg”-Taste zusätzlich ,,Enter” drücken. So schickst Du diese einzelne Zeile an die Console.
    • Das geht auch, indem Du mit der Maus oben rechts im Skript-Fenster auf ,,Run” klickst, ist aber umständlicher, da Du dazu von der Tastatur zur Maus wechseln musst.
    • Du kannst auch mehrere Zeilen im Skript markieren (mit der Maus oder mit den Pfeiltasten und gehaltener ,,Shift”-Taste) und dann bei gehaltener ,,Shift”-Taste ,,Enter” drücken.
    • Um einen größeren Abschnitt oder auch eine einzelne Zeile nochmals abzuschicken, zum Beispiel weil Du nach dem ersten Abschicken eine kleine Änderung vorgenommen hast, kannst Du ,,Strg” + ,,Shift” + ,,p” drücken oder mit der Maus auf das ,,Re-run the previous code region”-Icon oben rechts im Skript-Fenster klicken.

    Icon Re-run previous code region

    • Wenn Du nur einen Teil einer Zeile, zum Beispiel eine Funktion, die sich innerhalb einer anderen verschachtelt befindet, abschicken willst, markierst Du diesen Teil (,,Shift” + Pfeiltaste oder Maus) und drückst dann bei gehaltener ,,Shift”-Taste ,,Enter”.

    Wenn Kommentare und Notizen an die Console geschickt werden, verursacht das Fehlermeldungen, da diese ja nicht einer R-Funktion entsprechen. Um diese Fehlermeldungen zu vermeiden, wird ein #-Zeichen vor den Kommentar gesetzt. Alles, was nach einem #-Zeichen kommt, wird von R ignoriert. So brauchst Du nicht darauf achten, ob sich zwischen den Code-Zeilen Kommentare befinden, Du kannst alles abschicken, ohne dass durch die Texte Fehler entstehen. Kommentare im R-Skript sehen also z.B. so aus:

     mean(c(1:10)) # hier wird der Mittelwert der Zahlen 1 bis 10 berechnet
    

    oder bei längeren Kommentaren so:

     # Workspace bereinigen, damit alles frei ist, bevor mit dem neuen Skript
     # begonnen wird - sollte standardmäßig jedem Skript vorangestellt werden,
     # damit sicher ist, dass sich keine Altlasten mehr im Environment befinden:
     rm(list = ls())
     # Einstellen des ,,working directories” (des Ordners, in dem wir arbeiten)
     setwd(dir = "E:/RRR/R2016")
     # Einladen von Daten:
     # Wichtig:
     # Spaltenüberschriften angeben, damit die Struktur der Tabelle für R erkennbar ist: header = TRUE
     # Das Trennzeichen der Spalten (den Separator, hier ein ;) angeben: sep = ";"
     # Das Dezimaltrennzeichen angeben: dec = "."
     # Das Ergebnis als Objekt (hier: soil) zuweisen, sonst wird die Tabelle nur in der Konsole ausgegeben.
     soil <- read.table(file = "F:/RRR/R2016/data/soil.csv", header = TRUE, sep = ";", dec = ".")
    

    Dieses Auskommentieren kann auch verwendet werden, um Abschnitte des Codes, die nicht immer ausgeführt werden sollen, vorübergehend ,,abzuschalten”. So kannst Du es vermeiden, Code zu löschen, den Du später evtl. noch benötigst. Auch bei der Fehlersuche kann das Auskommentieren hilfreich sein.

    Tipp I: Wie in den meisten anderen Programmen auch, kann mit ,,Strg” + ,,z” die letzte - beziehungsweise bei wiederholtem Drücken dieser Tastenkombination die letzten - Eingabe(n) im Skript rückgängig gemacht werden. Das kann auch hilfreich sein, wenn versehentlich das ganze Skript markiert und dann gelöscht wurde.

    Tipp II: Wenn Du vier oder mehr #-Zeichen nacheinander nach einer Kommentar-Zeile eingibst, interpretiert RStudio das als eine Art ,,Kapitelüberschrift”. Dadurch werden zwei Funktionen aktiviert: Zum einen kannst Du mit dem kleinen Dreieck links neben der Zeile den folgenden Abschnitt ,,ein- und ausklappen” - wenn der Bereich ,,eingeklappt” ist, erscheint das Skript evtl. übersichtlicher. Der sich dahinter verbergende Code wird komplett an die Konsole gesendet, wenn die ,,Überschriftszeile” abgesendet wird.
    Zum anderen besteht die Möglichkeit, diese ,,Gliederungspunkte” direkt anzusteuern, da sie am unteren Rand des Skript-Fensters per Klick auf den kleinen ,,Doppelpfeil” - zwei aufeinander stehende Dreiecke - anzusteuern sind. Damit das sinnvoll nutzbar ist, solltest Du im Skript vor den vier #-Zeichen in der selben Zeile eine passende ,,Kapitelüberschrift” eintragen (und davor ein #-Zeichen, damit die Zeile als Kommentar erkannt wird).

    Markierung von abschnitten im Skript

    So sieht es aus, wenn die Abschnitte ,,eingeklappt” sind:

    eingeklappte Skript-Abschnitte

    Das Skript-Fenster von RStudio unterstützt beim Schreiben von Code, indem es während der Eingabe eines Funktionsnamens einen passenden vorschlägt und auf zu einer Funktion gehörende Argumente und mögliche Fehlerquellen hinweist. Diese Unterstützung lässt sich durch Drücken der ,,Tab”-Taste auslösen und in den Global Options im RStudio-Menüpunkt ,,Tools” sehr detailliert konfigurieren. Für wie hilfreich oder störend diese Unterstützungen empfunden werden, ist sicherlich individuell unterschiedlich - gerade daher sind diese Konfigurationsmöglichkeiten wichtig.

    Viele R-Nutzende benötigen diese Vereinfachungen eher selten, da sich große Teile des Codes aus existierenden Vorlagen, die aus Internetquellen, Kursskripten, Büchern etc. kopiert werden, entwicklen lassen. Dann werden ,,nur” Objektnamen und einzelne Einstellungen verändert. Gerade am Anfang wirst Du selten Code komplett selbst schreiben.

    Weitere Informationen finden sich unter anderem in der RStudio-Dokumentation - leider nur auf Englisch:


    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!

    Die Menüleiste des Skript-Fensters

    Die Menüleiste des Skript-Fensters bietet einige weitere, per Mausklick erreichbare Funktionen. Die wichtigsten sind:

    • Speichern: Wie bei anderen Programmen auch, ist häufiges Speichern der erarbeiteten Inhalte anzuraten. Es kann auch sinnvoll sein, mehrere Versionen eines Skripts zu speichern, insbesondere nach größeren Veränderungen, um die Möglichkeit zu haben, zu einem alten (funktionierenden) Stand zurückzukehren. Speichern lässt sich auch per ,,Strg” + ,,s” ohne die Maus zu benutzen.

    Menü Skript-Fenster

    • Lupe: Hinter dem Lupen-Icon verbirgt sich eine Suchen-Funktion, die auch als ,,Suchen und Ersetzen” genutzt werden kann. Die Suche lässt sich sehr gut präzisieren, indem z.B. Groß- und Kleinschreibung beachtet wird, nach ganzen Wörtern gesucht wird usw. ,,Suchen und Ersetzen” kann sehr hilfreich sein, wenn es z.B. darum geht, ein Skript oder einen Teil eines Skripts in Kombination mit ,,Copy&Paste” an andere Variablennamen oder andere Teile eines Datensatzes anzupassen. Die Suchen-Funktion lässt sich auch per ,,Strg” + ,,f” aufrufen

    Suchen und Ersetzen

    ! Vor der Verwendung der Option ,,Replace All” in Kombination mit ,,In selection” ist das Speichern des Skripts dringend anzuraten. Es passiert leider, dass ,,In selection” nicht klappt und die Ersetzung sich auf das gesamte Skript auswirkt, was sich nicht immer rückgängig machen lässt - es sei denn die Version wurde vor dem Ersetzen gespeichert!

    • Hinter dem ,,Zauberstab”-Symbol verbergen sich eine ganze Reihe von Funktionen. Eine sehr nützliche ist, größere Abschnitte auf einen Schlag mit #-Zeichen zu versehen, also ,,auszukommentieren”. Dazu wird der Abschnitt markiert und dann der Menüpunkt ,,Comment/Uncomment Lines” ausgewählt. Wie der Name schon sagt, lässt sich das Auskommentieren damit auch rückgängig machen. Einfacher geht es mit der Tastenkombination ,,Strg” + ,,Shift” + ,,c”.

    Weitere Skript-Formate

    Im ,,New File”-Menü steht ganz oben ,,R Script” - darunter aber auch einige andere Dateiformate. Es ist mit RStudio also möglich, auch in anderen Programmiersprachen ,,zu schreiben” und ,,auszuführen”. Die Code-Diagnose und das ,,Highlighting” ist für sogar noch mehr Formate verfügbar, darunter Python, JavaScript, HTML und CSS, das Ausführen dieser Formate geht zur Zeit nur mit Umwegen (z.B. knitr).

    Skript-Formate

    Ohne Umweg lassen sich beispielsweise Skripte anderer Programmiersprachen wie C++ be- und verarbeiten oder Präsentationen mit R-Code erstellen. Es ist auch möglich, aus Skripten, die Text und R-Code enthalten, Ausgabe-Dokumente zu erstellen, die neben dem formatierten Text den R-Code und dessen Ergebnisse und damit produzierte Abbildungen enthalten. Mit einer solchen Vorlage lassen sich sehr einfach mit neuen Daten erstellte Aktualisierungen in verschiedenen Dokument- und Präsentationsformaten ausgeben. Das können auch sehr umfangreiche Dokumente, wie zum Beispiel Praktikumsberichte oder Abschlussarbeiten sein. Auf diese Formate und in den entsprechenden Fenstern integrierte Funktionen wird hier nicht weiter eingegangen. Informationen dazu gibt es zum Beispiel im Netz unter anderem auf der Seite des Herstellers RStudio Inc. (dort nur auf Englisch):


    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!

    Environment und History (oben rechts)

    Das Fenster ist in zwei Tabs aufgeteilt: Environment und History.

    Der Environment-Tab zeigt alle Objekte, die aktuell in R ,,geladen” sind. Es handelt sich sozusagen um den ,,Arbeitsspeicher” von R. Alle Objekte, die hier angezeigt werden, können direkt von R-Funktionen angesprochen werden und somit für Rechenoperationen verwendet werden.
    R kann z.B. nicht direkt mit einer Excel-Tabelle rechnen. Diese wird dazu erst als Objekt in das Environment geladen - wie das geht, kannst Du im entsprechenden RLab-Kurs lernen. Dass das ,,Laden” und Zuweisen zu einem Objektnamen erfolgreich war, kannst Du unter anderem daran sehen, dass die Daten im Environment erscheinen. Je nach Datentyp kannst Du dort auch Informationen über die Struktur oder eine Vorschau auf die Daten sehen.

    So sieht das Environment aus, wenn verschiedene Dateiformate geladen sind:

    RStudio Environment

    Die Menüleiste des Environments bietet sogar Möglichkeiten zum Einladen von Daten (,,Import Dataset”) oder dem Löschen aller im Environment befindlichen Daten (,,Besen”-Symbol). Diese Funktionen sind aber auch sehr gut über ein R-Skript und die darin enthaltenen Funktionen zum Importieren von Daten oder zum Löschen zu erreichen. Das ist in der Praxis sehr viel einfacher und schneller, insbesondere, wenn im Laufe komplexerer Rechnungen verschiedene Datensätze geladen werden.

    Das Speichern und Öffnen (Disketten bzw. Ordner-Symbole) zuvor gespeicherter Abbilder des Environments ist dagegen in bestimmten Fällen sehr hilfreich. Wenn eine Rechnung sehr lange dauert, kann es sinnvoll sein, das Ergebnis zu speichern, um damit später weiter rechnen zu können, ohne die evtl. mehrere Stunden dauernde Rechnung jedes Mal neu auszuführen. Generell sollte das Environment zu Beginn aber leer sein, damit nicht versehentlich mit dort evtl. vorhandenen alten Versionen von Objekten gerechnet wird.

    Im History-Tab werden alle an die Console geschickten Inhalte aufgezeichnet. Sie ähneln dem, was in der Console erscheint, allerdings fehlen die von R ausgegeben Ergebnisse oder Fehlermeldungen. Auch hier bietet die Menüleiste des Tabs verschiedene per Mausklick erreichbare Funktionen wie das Speichern der History oder das (erneute) Absenden des Inhalts an die Console.

    Hier der direkte Vergleich der Inhalte von Console und History:

    Vergleich Inhalt Console - History


    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!

    Das Help-/Plot-/Packages-Fenster (unten rechts)

    Dieses Fenster bietet ausser den drei im Titel genanten Tabs noch zwei weitere: Den ,,Files”-Tab und den ,,Viewer”-Tab.

    Der Files-Tab ist eine Anzeige des Arbeitsverzeichnisses, vergleichbar mit dem Windows-Arbeitsplatz bzw. -Explorer. Der Viewer-Tab kann zur Anzeige von mit R erzeugten Web-Inhalten verwendet werden. Dabei kann es sich um HTML-Inhalte oder Web-Anwendungen handeln. Dieser Tab dürfte tendenziell nur bei fortgeschrittenen R-Kenntnissen von Interesse sein.

    Der RStudio Files-Tab - die Verzeichnisauswahl lässt sich mit Klick auf die drei Punkte oben rechts aufrufen:

    RStudio Files-Tab

    RStudio Viewer-Tab mit einer interaktiven Shiny-App:

    RStudio Viewer-Tab

    Im Plot-Tab werden mit R erstellte Abbildungen angezeigt. Wenn dieser Tab für eine Abbildung zu klein ist, kann mit dem ,,Zoom”-Button ein großes Fenster geöffnet werden, in dem die Abbildung angezeigt wird. In diesem Tab werden alle Abbildung gespeichert, bis R Studio geschlossen oder die Abbildungen mit dem ,,Besen”-Button (alle) oder dem Button daneben mit dem Kreuz im roten Kreis (die gerade angezeigt Abbildung einzeln) gelöscht werden. Von einer zur nächsten Abbildung umschalten lässt sich mit den Pfeilen links in der Menüleiste des Tabs. Der Tab bietet verschiedene Möglichkeiten zum Export, das heißt zum Speichern einzelner Abbildungen in unterschiedlichem Grafik-Formaten. Der Export mehrere Abbildungen auf einmal lässt sich komfortabler und automatisiert über entsprechende Funktionen im R Skript erreichen.

    RStudio Plot-Tab

    Der Packages-Tab bietet eine Übersicht über die installierten R-Packages - also die Zusatzmodule, durch die die große Vielfalt an Möglichkeiten bei der Datenanalyse mit R erreicht wird. Über die Punkte ,,Install” und ,,Update” in der Tab-Menüleiste ist die Installation bzw. das Updaten der Packages möglich. Details zum Installieren von Packages finden sich im Digitalen Skript Tipps und Tricks in R. Die Kästchen links neben den Package-Namen zeigen an, ob ein Package ein- oder ausgeschaltet ist. Das Einschalten lässt sich per R Code mit der Funktion library() erreichen, es geht aber auch durch Anklicken der jeweiligen Box. Das Aktivieren per Code ist auf jeden Fall vorzuziehen, da es sich dort passend zu den im Code vorkommenden Funktionen komfortabel integrieren lässt.

    RStudio Packages-Tab

    Der Help-Tab bietet, wie der Name vermuten lässt, Zugriff auf die zu jeder R-Funktion mitgelieferten Hilfetexte, die in der Regel auch direkt ausführbare Beispiele enthalten. Auf die R-Hilfe wird in einem RLab-Kurs und einem Digitalen Skript eingegangen. Hier sei nur auf die zwei unterschiedlichen Suchfelder des Help-Tabs hingewiesen:
    Oben rechts ist das wichtigere Suche-Feld. Hier wird der Funktionsname eingegeben, nach dem gesucht wird.
    Weiter links befindet ich eine zweite Such-Zeile. Hier kann ein Begriff eingegeben werden, der innerhalb eines aufgerufenen Hilfetextes gesucht wird.

    RStudio Help-Tab


    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!

    Die RStudio-Menüleiste

    Die R-Studio-Menüleiste, ganz oben im RStudio-Fenster, bietet zahlreiche, überwiegend auch über die einzelnen Fenster und Tabs erreichbare Funktionen. An dieser Stelle sei besonders auf den Menüpunkt ,,Tools” und dort ,,Global Options” hingewiesen:

    RStudio Global Options

    Unter diesem Punkt lassen sich zahlreiche wichtige Einstellungen von RStudio vornehmen. Am bedeutendsten ist die Möglichkeit, festzulegen, mit welcher R-Version RStudio verbunden ist, also zu welcher auf dem Rechner installierten Version von R Code zum Verarbeiten geschickt wird.

    Weiterhin lässt sich hier einstellen, wie sehr RStudio beim Schreiben des Codes im Skript-Fenster durch automatische Vervollständigung und Anzeige potentieller Fehler unterstützt und wie die Oberfläche von RStudio aussehen soll: Es lassen sich andere Text- und Hintergrundfarben einstellen und auch die vier Fenster unterschiedlich anordnen.

    Unter dem Reiter "Code" lässt sich die Funktion "soft wrap" aktivieren, mit der automatische Code-Zeilenumbrüche angezeigt werden. Damit werden lange Code-Zeilen automatisch entsprechend der Größe des Skriptfensters umgebrochen. So hast Du Deinen gesamten Code einer Zeile immer im Blick.


    Weitere Menüpunkte

    Ebenfalls über den Menüpunkt ,,Tools” ist der Punkt ,,Addins” erreichbar (oder über das Icon unterhalb der Menüleiste). RStudio Addins sind eine recht neue Entwicklung und es ist zu erwarten, dass hier noch einige Funktionen hinzukommen werden, die die Bedienung von R bzw. das Zusammenstellen von Code in einem Skript, angelehnt an eine grafische Benutzeroberfläche, erleichtert.

    Unter dem Menüpunkt ,,Edit” finden sich einige auch aus anderen Programmen bekannte und durchaus nützliche Einträge: Zum Beispiel lassen sich mit ,,Redo” bzw. ,,Undo” Eingaben wiederholen bzw. vor allem rückgängig machen. Letzteres geht auch, wie in anderen Programmen ebenfalls üblich, mit der Tastenkombination ,,Strg” + ,,z”. Auch die Menüpunkte Kopieren (,,Copy”) und Einfügen (,,Paste”) befinden sich hier, sind aber ebenfalls wie in anderen Programmen auch schneller mit den Tastenkombinationen ,,Strg” + ,,c” bzw. ,,Strg” + ,,v” zu nutzen.



    Eine Zusammenfassung - allerdings auf Englisch - der wichtigsten bis hierher vorgestellten Inhalte bietet auch folgendes Video:


    ,,RStudio in 2 Minutes” von RStudio, Inc. auf Vimeo.


    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!

    Es geht auch ohne RStudio: ,,R pur" - Arbeiten mit der Console

    Rechnungen mit R lassen sich ohne weiteres auch direkt in der Console eingeben und ausführen. Das geht mit der in RStudio ,,eingeblendeten” Console oder auch mit R ,,pur”, also direkt in R. R lässt sich ohne RStudio starten, der Weg dahin unterscheidet sich etwas, je nachdem, ob R-Portable oder die ,,normale” R-Version verwendet wird:


    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!

    RLab-Kurse und RStudio

    Die Eingaben bei der Bearbeitung von RLab-Kursen finden in der Console statt - ein Skript wird dabei nicht benötigt und auch nicht erstellt. Es ist dennoch in jedem Fall zu empfehlen, RLab-Kurse in der in RStudio integrierten Console durchzuführen, da an vielen Stellen auf die Darstellung zum Beispiel des Plot-Fensters oder der Anzeige des Environments in RStudio Bezug genommen wird. Zum Teil stehen die wichtigsten in RLab-Kursen verwendeten Funktionen mit Kommentaren als Skripte zum Download bereit.

    Außerhalb der RLab-Kurse, also z.B. bei der Analyse eigener Daten oder dem ,,Mitschreiben” in einem R-Kurs außerhalb von RLab ist das Erstellen eines Skripts dringend zu empfehlen. Gegenüber der Arbeit in der Console hat das Erstellen von Skripten, eine Reihe von Vorteilen. Vor allem lassen sich die Inhalte der Skripte im Gegensatz zu Eingaben in die Console komplett speichern und später wieder öffnen. Nur so ist es möglich, später noch einmal auf die Funktionen und Kommentare zurückzugreifen, z.B. um etwas zu wiederholen und vor allem um Teile des Skripts an anderer Stelle wieder zu verwenden.

    RStudio Skript öffnen und speichern


    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!

    Vorteile beim Arbeiten mit R-Skripten

    Zahlreiche Vorteile beim Arbeiten mit R-Skripten werden im sehr empfehlenswerten Buch von Wollschläger (2017:163-165) aufgelistet und hier wiedergegeben:

    • Erleichterter Überblick über die auszuführenden Befehle
    • Einzelne Schritte der Datenanalyse können gedanklich nachvollzogen werden.
    • Ein Skript garantiert die Reproduzierbarkeit von Ergebnissen. Bei einem Programm mit grafischer Benutzeroberfläche gelingt es evtl. nicht, die gleichen Auswertungsschritte zur Reproduktion von Auswertungsergebnissen genauso zu wiederholen.
    • Ein Skript lässt sich mit Kommentaren versehen und so die Dokumentation über die reinen Befehle hinaus sinnvoll anreichern.
    • Einteilung von komplexen Auswertungen in Teilschritte, so lassen sich Zwischenergebnisse auf Richtigkeit prüfen und Fehler leichter finden.
    • Ein Skript kann immer wieder ausgeführt werden, was viele weitere Vorteile mit sich bringt:
      • Die Fehlersuche wird vereinfacht, da sich Veränderungen vornehmen lassen, ohne den kompletten Code neu einzugeben. Per ,,Copy&Paste” lassen sich leicht mehrere Varianten erstellen.
      • Es lassen sich nachträglich mit geringem Aufwand Veränderungen an der Ausgabe von R vornehmen: Zum Beispiel können Überschriften, Achsenbeschriftungen oder Farben von Grafiken im Skript leicht für viele Grafiken auf einmal verändert werden. In Tabellenkalkulationsprogrammen müssten hingegen in allen Grafiken einzeln immer die gleichen Schritte wiederholt werden, um diese Änderungen vorzunehmen.
      • Ein einmal erstelltes Skript lässt sich oft mit wenig Aufwand zur Auswertung anderer Datensätze anpassen. Daraus ergibt sich Zeitersparnis und es werden Fehler vermieden, da geprüfter und bewährter R-Code wiederverwendet wird.
      • Das gleiche gilt auch für Teile eines Skripts, einzelne Zeilen oder immer wiederkehrende Routinen.
      • Ein Skript kann zusammen mit den Daten, die damit analysiert werden, weitergegeben werden. Das kann unter anderem sinnvoll sein, um Ergebnisse kontrollieren zu lassen, um andere an erreichten Fortschritten teilhaben zu lassen und im Umgang mit der Statistiksoftware zu schulen.

    Wollschläger, D. 2017. Grundlagen der Datenanalyse mit R: Eine anwendungsorientierte Einführung. Springer Spektrum, Berlin Heidelberg.

    Download: das Buch als pdf für Angehörige einiger Hamburger Universitäten.


    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!

    RStudio-Projekte

    RStudio-Projekte sind tendenziell für Fortgeschrittene interessant. Diese Funktionalität von RStudio wird hier vorgestellt, da sie es ermöglicht, Daten, Code, Ergebnisse usw. verschiedener Analysen oder Analyse-Versionen sauber getrennt zu verwalten. So lassen sich auch mehrere rechenintensive Analysen parallel rechnen, ohne durcheinander zu kommen. Der Vollständigkeit halber: Auch ohne RStudio-Projekte können mehrere Instanzen von RStudio gleichzeitig laufen - aber weniger komfortabel bedienen.

    Vor allem erhöht die Verwendung von Projekten die Übersichtlichkeit der Datenverzeichnisse - Ergebnisse, Code usw. lassen sich leichter wiederfinden. Unterm Strich wird damit auch die Reproduzierbarkeit von Ergebnissen gesichert und damit eine der wichtigsten Grundanforderungen an empirische Forschung erfüllt. Erst so werden Ergebnisse glaubwürdig, was auch ohne RStudio-Projekte möglich ist, aber eben nicht so einfach.

    Ein RStudio-Projekt lässt sich einfach über den Menüpunkt ,,File” -> ,,New Project…” starten.

    Neues Projekt anlegen

    RStudio-Projekte hängen immer mit spezifischen ,,working directories” zusammen, daher wird beim Erstellen eines neuen Projekts gefragt, ob ein neues ,,working directory” angelegt werden soll oder schon eines mit Code und/oder Daten vorhanden ist. Auch die Möglichkeit, mit einem Versionsverwaltungssystem (GIT oder Subversion) zu arbeiten, wird angeboten.

    Auswahl Projekt-Typ

    Die wichtigsten weiteren Informationen zum Umgang mit RStudio-Projekten findest Du in der englischsprachigen Dokumentation von RStudio.


    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!

    Alternativen zu RStudio

    RStudio ist momentan wohl die IDE/GUI für R, die sich am dynamischsten entwickelt und die die meisten Funktionen bietet. Das gilt auch für den Nutzen um R ,,drumherum”, wie zum Beispiel die Möglichkeiten Skripte verschiedener Programmier- und Textverarbeitungssprachen zu schreiben oder Apps zur interaktiven Datenanalyse zu entwickeln. Dennoch soll hier in aller Kürze auf Alternativen hingewiesen werden:

    • R ,,ohne alles” (R.exe): Eignet sich kaum zur Bearbeitung selbst wenig komplexer Analysen, wird aber benötigt, um mit anderen Programmen, z.B. Windows oder SAGA-GIS auf R-Funktionen zuzugreifen.

    • R GUI (Rgui.exe): Hier können zwar Skripte erstellt werden, Komfort-Funktionen wie Syntax-Hervorhebung und automatische Vervollständigung von Funktionen sind aber nicht vorhanden, ebenso fehlt z.B. die Anzeige des Environments. R.exe und Rgui.exe wurden im Kapitel ,,Es geht auch ohne RStudio… ” mit Screenshot kurz vorgestellt.

    • Tinn-R: Eine recht weit entwickelte IDE/GUI, die viele der Funktionen von RStudio bietet, sich aber etwas weniger dynamisch entwickelt. Unter anderem wird auch Code-Vervollständigung, Syntax-Hervorhebung und der Export von Skripten in verschiedene Text-Formate angeboten.

    • Architect: Eine IDE, die auf der Entwicklungsumgebung Eclipse basiert. Neben R ist hier unter anderem auch die Arbeit mit dem ebenfalls häufig verwendeten Programm Python möglich, was RStudio nur mit Umwegen (z.B. knitr) unterstützt.

    • R Commander: Dieses Programm ist als u.a. mit der Maus bedienbare graphische Benutzeroberfläche konzipiert. Der R Commander wird als R package installiert.

    • JGR: Wie RStudio ein Java-Programm, das sich optisch etwas mehr an der ursprünglichen R-Oberfläche orientiert. Mit einer Erweiterung (Deducer) kann mehr als sonst bei R üblich per Maus bedient werden. Die Entwicklung verläuft zum Zeitpunkt der Erstellung dieses Skripts Mitte 2017 recht zögerlich, die letzte Version 1.7-17 wurde im Januar 2015 publiziert. Weitere Informationen zu JGR finden sich in Dormann (2013:XVIII-XX).

    • Dort sind auch eine Reihe weiterer Editoren für R aufgeführt (Dormann 2013:XVII-XX).

    Dormann, C.F. 2013. Parametrische Statistik. Springer Spektrum, Berlin Heidelberg.

    Download: Das empfehlenswerte Buch als pdf für Angehörige einiger Hamburger Universitäten.


    Dies ist die letzte Seite des Digitalen Skripts, das versucht, einen Überblick über RStudio und die Arbeit mit R-Skripten zu geben. Für Anregungen und Kommentare zur Verbeserung ist das RLab-Team immer dankbar! Du kannst auch Fragen zu den Inhalten stellen! Nutze für all das gerne die Kommentar-Funktion!