So debuggen Sie Code in RStudio und erstellen ein neues Projekt in R.

Ein Neujahrsgeschenk für mich in diesem Jahr war ein neues Team und ein Projekt in der R-Sprache, von dem ich in diesem Moment ein wenig wusste. Anfangs war es schwierig und nicht klar, aber im Laufe der Zeit klärte sich das Bild auf. Wir haben es geschafft, etwas herauszufinden, etwas musste so akzeptiert werden, wie es ist. Und jetzt, nach zweieinhalb Monaten Arbeit an R, beschloss ich, meine Erfahrungen zu teilen und über meine ersten Schritte in diesem Projekt zu sprechen. Ich werde nicht alle meine seelischen Qualen und Emotionen beschreiben, die mich bei der Beherrschung dieser sehr interessanten Sprache überwältigt haben, aber ich werde mich auf die technische Seite des Problems konzentrieren. Der Zweck meines Artikels ist es, Ihnen zu erklären, wie Sie Code in RStudio debuggen und ein neues Projekt in R erstellen.



Das erste, was ich zu bewältigen hatte, war das Debuggen der Anwendung. In RStudio ist es möglich, einzelne Abschnitte des Codes auszuwählen und auszuführen. Dies ist sehr hilfreich, wenn Sie mit R-Markdown arbeiten, da Sie im Debug-Modus keinen Haltepunkt festlegen können. Und Sie können Linien auswählen und überall ausführen.



Ausführen einer Codezeile



Darüber hinaus übernimmt er die Variablen, die in diesen Zeilen aufgerufen werden, aus der globalen Umgebung. Es stellt sich heraus, dass es ausreicht, um zu überprüfen, wie diese oder jene Funktion funktioniert, globale Variablen zu erstellen, den Code von diesen Funktionen Zeile für Zeile auszuführen und zu beobachten, was passiert. Ich arbeite in RStudio, wo Sie die Werte dieser Variablen auf der Registerkarte Globale Umgebung sehen können.



globales Umweltpanel



Sie erstellen oder ändern die Werte dieser Variablen über die Konsole.



Konsole



Neben den Variablen gibt es noch ein anderes Problem. Wenn Sie Befehle zeilenweise ausführen, wird der Code der Funktionen, die in den von Ihnen ausgeführten Zeilen aufgerufen werden, möglicherweise nicht gefunden. Dazu müssen sie auch in den Speicher geladen werden. Dazu müssen Sie die Datei mit dem Code dieser Funktion öffnen und auf die Schaltfläche Quelle klicken.



Quellenschaltfläche



Es gibt auch einen klassischen Debug-Modus in RStudio. Es kann Haltepunkte festlegen und im Debug-Modus und mit der Funktion browser () ausgeführt werden, wenn festgestellt wird, welches R die Codeausführung unterbricht, sodass Sie die Anwendung debuggen können. In unserem Projekt war dies jedoch aufgrund der Arbeit mit dem R-Abschlag nicht weit verbreitet.



Das nächste, was mir in R begegnet ist, sind zwei Arten von Projekten: ein reguläres Projekt (Neues Projekt) und ein Projekt vom Typ Paket (R-Paket). Als ich mich dem Team anschloss, gab es eine Mischung aus diesen beiden. Es schien, als gäbe es ein Paket, aber es würde nicht gebaut werden und wir haben es über RScrtipt gestartet. Dank der Bemühungen meiner Kollegen haben wir jetzt ein funktionierendes R-Paket.



Bild



Ein reguläres Projekt (Neues Projekt) bietet das Schreiben von R-Skript-Dateien an, bei denen eine Datei über die Funktion source () mit einer anderen verbunden ist. Wenn Sie das Skript ausführen, sieht es also wie eine „sehr große Datei“ aus, die alle Dateien des Projekts enthält. Es ist nicht immer bequem und nicht sehr flexibel.



Quellenschaltfläche



Im Gegensatz zu einem regulären Projekt lädt uns ein Projekt vom Typ R-Paket ein, eine Funktionsbibliothek in R zu schreiben, die dann auf jedem Computer installiert werden kann, und diese Funktionen in unserer R-Skriptdatei aufzurufen. Es gibt wirklich eine Einschränkung. Funktionen sind nur über das R-Skript verfügbar. Bevor Sie mit ihnen arbeiten, müssen Sie daher ein solches Skript erstellen und Aufrufe an diese Funktionen darin schreiben. Es wird in der Konsole mit dem folgenden Befehl gestartet: Rscript. Damit dies funktioniert, müssen Sie den Pfad zur Datei Rscript.exe in den Umgebungsvariablen registrieren. Auf meinem Computer sieht dieser Pfad folgendermaßen aus: C: \ Programme \ R \ R-4.0.3 \ bin... Wenn Sie im Entwicklungsmodus eigene Funktionen in einem Projekt vom Typ Paket erstellen, sollten Sie die Funktion load_all () verwenden, die alle Änderungen in den Speicher zieht. Wenn Sie es nicht verwenden, müssen Sie den Installationsprozess starten, wenn Sie den Code im Projekt ändern, damit diese Änderungen wirksam werden, was R nicht schnell erledigt.



Nun zum R-Package-Projekt: Im Gegensatz zu einem einfachen Projekt enthält es eine bestimmte erforderliche Struktur und spezielle Dateien. Das:



  • BESCHREIBUNG Datei mit Paketbeschreibung,
  • man Ordner für Funktionsbeschreibungen,
  • NAMESPACE- Datei mit einer Liste der verfügbaren Funktionen des erstellten Pakets,
  • Ein Ordner namens R, der Ihren R-Code enthalten sollte
  • .Rbuildignore ,
  • .Rhistory,
  • .RData Environment,


.Rhistory und .RData sind sowohl in einem Paketprojekt als auch in einem regulären Projekt vorhanden. Sie können auch einen inst-Ordner für zusätzliche Ressourcen und einen Testordner für Komponententests erstellen. Weitere Informationen zur Funktionsweise des R-Pakets und zur Funktionsweise finden Sie unter dem folgenden Link .



Beim Erstellen eines R-Paket-Projekts wird das Dienstprogramm roxygen2 verwendet. Es hilft Ihnen beim Erstellen einer Dokumentation für Ihr Paket. Die Idee ist, dass Sie jede Funktion direkt im Code beschreiben und das Dienstprogramm selbst diese Beschreibung in den Ordner man überträgt, sie in das erforderliche Format konvertiert und der NAMESPACE-Datei Informationen zu den Funktionen hinzufügt. Lesen Sie hier mehr über roxygen2 .



Es gibt auch nützliche Pakete zum Einrichten eines Projekts, die in fast allen Anweisungen zum Erstellen des Projekts verwendet werden, zumindest in allen, die ich im Internet gefunden habe:



  • devtools - das Hauptpaket , das die meisten Befehle für die Arbeit mit dem Projekt in vereinfachter Form enthält
  • usethis ist ein Hilfspaket, das viele Routineoperationen vereinfacht
  • testthat - ein Paket zum Schreiben von Unit-Tests
  • covr - Paket zur Überprüfung des Codes für die Abdeckung von Komponententests


Alle öffentlichen Pakete mit ihren Beschreibungen und Dokumentationen für die R-Sprache werden in CRAN - The Comprehensive R Archive Network (https://cran.r-project.org/) gespeichert.



RStudio verfügt bereits über integrierte Tools zum Überprüfen eines neuen Pakets Projekt erstellt (Paket prüfen) und testen (Testpaket).



Menü erstellen



Es scheint, dass er alles erzählt hat, was er wollte, aber es ist besser, einmal zu sehen, als hundertmal zu lesen. Unten sehen Sie ein Video, wie Sie mit R beginnen können:



  1. Erste Schritte mit R auf RStudio. R-Projekt oder R-Paket
  2. Erstellen eines R-Paket-Projekts zusammen mit Unit-Tests und Dokumentation
  3. Ausführen und Debuggen von R-Code für ein R-Paket-Projekt


Nach meiner Erfahrung ist das größte Problem, wenn Sie sich in einem Projekt mit einer neuen Programmiersprache befinden, meistens nicht die Sprache selbst, sondern die Tools für die Arbeit damit, Konfigurationstools und Umgebungseinstellungen. Hoffentlich wird es für viele nach dem Lesen dieses Artikels viel einfacher sein, mit R zu beginnen.



All Articles