HOWTO · R
Starten Sie R in R Studio neu
Dieser Artikel erläutert zunächst die Notwendigkeit, R neu zu starten, und erwähnt dann alternative Möglichkeiten zum Neustarten von R mit R Studio.
Auf dieser Seite
Um eine R-Sitzung in RStudio neu zu starten, wählen Sie Session > Restart R oder drücken Sie Ctrl + Shift + F10 (auf dem Mac verwenden Sie Command anstelle von Ctrl). Bei einem Neustart werden die Objekte der aktuellen Sitzung gelöscht und R wird erneut gestartet. Das Betriebssystem gibt dadurch jedoch nicht garantiert sofort den gesamten Speicher für andere Anwendungen frei.
Warum eine R-Sitzung in RStudio neu starten?
RStudio führt R-Code in einer Sitzung aus. Wenn Sie mehrere Skripte in derselben Sitzung bearbeiten, können sie gemeinsame Objekte in der Global Environment verwenden. Weisen Sie beispielsweise einem Objektnamen einen neuen Wert zu, sehen spätere Codeabschnitte, die diesen Namen verwenden, den neuen Wert – auch wenn sie in einem anderen Skript stehen.
Durch einen Neustart erhalten Sie einen neuen R-Prozess, und die in der Sitzung gespeicherten Objekte werden entfernt. Pakete, die in der alten Sitzung geladen waren, sind danach nicht mehr angehängt. Laden Sie deshalb die benötigten Pakete erneut und erstellen Sie die Objekte, die Ihre Analyse erfordert. Ein Neustart kann dabei helfen zu prüfen, ob ein Skript auch nach einem sauberen Start funktioniert. Ob Speicher freigegeben wird, hängt von R und dem Betriebssystem ab. Verlassen Sie sich daher nicht darauf, dass durch einen Neustart eine bestimmte Speichermenge verfügbar wird.
R über die RStudio-Oberfläche neu starten
Für einen schnellen Neustart verwenden Sie die RStudio-Oberfläche:
- Wählen Sie Session > Restart R.
- Oder drücken Sie Ctrl + Shift + F10. Auf dem Mac drücken Sie Command + Shift + F10.
Der Menüweg ist hilfreich, wenn sich die Tastenkombination je nach Plattform oder RStudio-Version unterscheidet. Speichern Sie vorher alle Arbeiten, die Sie behalten möchten. Sobald R wieder gestartet ist, führen Sie den erforderlichen Einrichtungscode erneut aus, zum Beispiel zum Laden von Paketen und Einlesen von Daten.
R programmatisch neu starten: unterstützte und undokumentierte Optionen
Wenn Code einen Neustart aus einer aktiven RStudio-Sitzung anfordern soll, verwenden Sie rstudioapi::restartSession() aus dem Paket rstudioapi. Das Paket muss für die R-Sitzung verfügbar sein, und der Aufruf muss in RStudio erfolgen. Damit wird die IDE um einen Neustart gebeten. Der Aufruf eignet sich nicht allgemein, um einen außerhalb von RStudio gestarteten R-Prozess neu zu starten. Das folgende Beispiel zeigt den Aufruf für eine aktive RStudio-Sitzung; hier wird er nicht ausgeführt.
rstudioapi::restartSession()
Der interne Befehl .rs.restartR() ist undokumentiert und an die internen Abläufe von RStudio gebunden. Verlassen Sie sich in Skripten oder Arbeitsabläufen nicht darauf: Sein Verhalten ist keine unterstützte öffentliche Schnittstelle und kann sich ändern. Er ist keine empfohlene Alternative zum dokumentierten Menü oder zur API rstudioapi.
Der Aufruf der R-Funktion quit(), zum Beispiel quit(save = "no", status = 0), beendet den R-Prozess. Er startet nicht selbst einen Ersatzprozess und ist daher keine Neustartmethode.
RStudio-Projekte für getrennte Sitzungen verwenden
Ein RStudio-Projekt bündelt zugehörige Dateien und Projekteinstellungen, darunter das Arbeitsverzeichnis des Projekts. Projekte können dabei helfen, Analysearbeiten übersichtlich zu organisieren. Abhängig von den Einstellungen kann RStudio außerdem den Workspace-Zustand einem Projekt zuordnen. Ein Projekt allein garantiert jedoch nicht, dass mehrere R-Prozesse gleichzeitig laufen. Wenn Sie gleichzeitige Sitzungen benötigen, verwenden Sie ein separates RStudio-Fenster oder einen anderen Prozess.
Referenzen
- Kapitel 8 von R for Data Science erläutert die Verwendung von Projekten in einem R-Arbeitsablauf.
- Abschnitt 1.6 von R for Health Data Science behandelt regelmäßige R-Neustarts und RStudio-Startoptionen.