Gute GUI für R geeignet für einen Anfänger, der Programmieren in R lernen möchte?


73

Gibt es eine GUI für R, die es Anfängern erleichtert, in dieser Sprache zu lernen und zu programmieren?


2
Liste hier verfügbar .
Radek

17
Ich benutze Emacs + ESS, also würde ich hier wohl nicht viel helfen. Zu Ihrer Information wird es jedoch ein spezielles Problem mit R-GUIs geben (voraussichtlich Mitte 2011).
chl

5
Beachten Sie bei einer häufig gestellten Frage, dass das Scripting ein wesentlicher Bestandteil von Rs "Flavour" ist. Wenn Sie GUIs bevorzugen, ist R nicht der richtige Weg.
JohnRos

4
@ JohnRos: Ich könnte nicht mehr widersprechen. Ich verbringe den größten Teil meiner Arbeitszeit in R und kann es nicht ertragen, keine GUI zu haben. Schauen Sie sich einfach eine Featureliste einer GUI an, um herauszufinden, was Sie verpassen.
Cookie

2
Geschieht hier eine semantische Verwirrung? Ich habe verstanden, dass das OP nach einer integrierten Entwicklungsumgebung verlangt.
c.gutierrez

Antworten:


37

Ich würde @ Shanes Empfehlung für Deducer unterstützen und auch den R Commander von John Fox empfehlen . Das CRAN-Paket ist da . Es wird als R "Commander" bezeichnet, da es die R-Befehle zurückgibt, die mit der Auswahl des Point-and-Click-Menüs verknüpft sind. Diese können gespeichert und später über die Eingabeaufforderung ausgeführt werden.

Auf diese Weise können Sie, wenn Sie nicht wissen, wie etwas zu tun ist, es in den Menüs finden und eine sofortige Antwort erhalten, um zu erfahren, wie Sie etwas mit R-Code richtig machen können . Es sieht so aus, als würde Deducer ähnlich funktionieren, obwohl ich eine Weile nicht mehr mit Deducer gespielt habe.

Der Base R Commander ist für Anfänger gedacht, es gibt jedoch Plugins für anspruchsvollere Analysen (Deducer hat auch Plugins). Bedenken Sie jedoch, dass keine GUI alles kann und der Benutzer sich irgendwann vom Zeigen und Klicken abmelden muss. Einige Leute (ich eingeschlossen) denken, dass das eine gute Sache ist.


3
+1 für Rcmdr. Es ist schön, wenn man nur R lernt und mehr Zugang zu einem guten Statistikpaket bietet als SPSS oder Minitab, aber der Code, den es schreibt, ist oft unnötig ausführlich. Ein in Rcmdr: scatterplot erstelltes Streudiagramm (tab ~ pct, reg.line = FALSE, smooth = FALSE, spread = FALSE, boxplots = FALSE, span = 0.5, data = senate.race), als die meisten dieser Parameter anfänglich standardmäßig eingestellt waren mit. Es schreibt einen sehr wortreichen Code.
Christopher Aden

@Christopher Ich stimme dir zu; manchmal ist der Code wortreich. Es kommt von Tcl / Tk und wie Rcmdr aktuell geschrieben wird: Es würde ein erhebliches Umschreiben erfordern, um zu prüfen, ob die Standardeinstellung ausgewählt ist (und in diesem Fall eine abgekürzte Version zurückzugeben). Aber ja, das wäre eine Verbesserung. Eine einlösende Eigenschaft ist, dass es sich um guten Code handelt, indem er zu guten Praktiken anregt (FALSE anstelle von F usw.). Dies ist wichtig für Anfänger.

1
Das ist wahr. Ein weiterer Vorteil besteht darin, dass Anfänger sehen können, welche Parameter eine Funktion verwendet, ohne das? Befehl. Die Verwendung von FALSE anstelle von F ist ein großartiger Punkt. Ich habe einmal gesehen, wie ein Programm eine falsche Ausgabe gab, weil der Programmierer zuvor das Ergebnis einer ANOVA auf eine Variable mit dem Namen "F" gesetzt hatte.
Christopher Aden

1
Ich weiß nicht, ob sich etwas geändert hat, aber als ich das letzte Mal überprüft habe, dass Rcmdr nicht ohne Probleme auf dem Mac lief (einige Einschränkungen bei der Installation der Tcl / Tk-Bibliotheken). Obwohl es mir gefällt, habe ich es vermieden, es neuen Benutzern vorzuschlagen. Hat sich das geändert?
Russellpierce

@drknexus Soweit ich weiß, sind Sie genau richtig: Rcmdr übernimmt zusätzliche Arbeit für Mac (wegen Tcl / Tk). Das Publikum, das ich betreue, verwendet fast ausschließlich Windows (seufz!). Deshalb frage ich die ein oder zwei Personen pro Semester mit Mac, ob sie Probleme haben, die kein großes Problem darstellen. Aber ja, du hast recht.

119

Sie können auch das brandneue RStudio ausprobieren . Einigermaßen funktionsreiche IDE mit einfacher Einrichtung. Ich habe gestern damit gespielt und es scheint schön.

Aktualisieren

Ich mag RStudio jetzt noch mehr. Sie setzen Feature Requests aktiv um und es zeigt sich, dass die kleinen Dinge immer besser werden. Es enthält auch Git-Unterstützung (einschließlich Remote-Synchronisierung, damit die Github-Integration nahtlos verläuft).

Ein Haufen großer Namen hat sich soeben angeschlossen, dass die Dinge hoffentlich noch besser werden.

Erneut aktualisieren

Und in der Tat ist es nur auf schnelle Weise besser geworden. Die Überprüfungszyklen für die Paketerstellung werden jetzt mit einem Mausklick ausgeführt, und auch die kleinen Dinge verbessern sich weiter. Es kommt jetzt auch mit einer integrierten Debugging-Umgebung .


6
Nach ein paar Umdrehungen wird es das Beste sein. Seine erste Beta-Version ist bereits hervorragend nutzbar und schlägt die meisten anderen Optionen IMO.
JMS

2
Es hat mir auch gefallen Es ist für fortgeschrittene Benutzer, die im Grunde nur eine bessere Shell als RGui benötigen. Emacs + ESS hat noch viel mehr Funktionen, aber nicht jeder mag Emacs. RStudio scheint einfach, aber sehr effektiv zu sein, was es tun möchte. Ich freue mich darauf zu sehen, wie es sich im Laufe der Zeit entwickelt.
AlefSin

1
Ich liebe RStudio sehr. Es ist sehr einfach, Sweave- und Tex-Dateien einzurichten und auszuführen. Ich werde wahrscheinlich eines Tages zu Emacs wechseln, aber für Anfänger, die Code schreiben möchten, ist RStudio definitiv der richtige Weg.
Chris Beeley

1
@EpiGrad Einer der Vorteile von RStudio (aus meiner Erfahrung mit Emacs / ESS oder der Konsole) besteht darin, dass der interaktive R-Workflow nicht unterbrochen wird: R ist eine statistische Programmiersprache ; Kein GUI wird jemals diese Flexibilität bieten.
Chl

3
Ich empfehle RStudio ... Ja, es ist keine GUI. Ja, es ist eher wie eine IDE ... aber schließlich ist es eine nette Software, die man benutzen kann. Interaktive Konsole, Skripteditor, Diagramme und alle Funktionen, die Sie für ein effizientes Arbeiten mit R benötigen.
Da

24

Dies wurde auf StackOverflow mehrmals beantwortet . Die Top-Auswahl dort scheint durchweg Eclipse mit StatET oder Emacs mit ESS zu sein.

Ich würde nicht sagen, dass es gute Guis gibt, die das Erlernen der Sprache erleichtern . Das Nächste wäre der Deducer von Ian Fellows. Es stehen jedoch viele andere Ressourcen (Bücher, Artikel, Blogs, Pakete usw.) zum Lernen zur Verfügung.


6
Gut gemacht! Der Zweck einer GUI besteht nicht darin, die Sprache zu lernen, sondern das Erlernen der Sprache überflüssig zu machen. (edit :) Ich wusste nicht, dass einige GUIs die von G. Kay Kerns beschriebenen Funktionen haben. Ich nehme an, das würde Ihnen in den frühen Stadien des Sprachenlernens helfen.
Carlos Accioly

13

Ich denke, dass die Befehlszeile die beste Schnittstelle ist, und besonders für die Anfänger. Je früher Sie mit der Konsole beginnen, desto schneller werden Sie feststellen, dass dies die schnellste, bequemste und wichtigste Art ist, R zu verwenden.


6
Ehrlich gesagt, stimme ich nicht zu. Scripting ist viel leistungsfähiger.
RockScience

5
Für neue Benutzer ist es wichtig zu betonen, dass sie fast immer ein Skriptfenster und ctrl-Reher die direkte Befehlszeile verwenden sollten, sowohl für den Fall, dass Dinge nicht funktionieren und geändert werden müssen, als auch für den Fall, dass sie funktionieren und es wert sind, für die spätere Verwendung gespeichert zu werden .
Henry

3
Das Wichtigste, was mich am Standard-Windows-RGui stört, ist das Fehlen einer Funktion zum Anzeigen passender Klammern. Ich tendiere dazu, eine nicht zu vernachlässigende Menge an Zeit zu verschwenden, um nach fehlenden oder zusätzlichen Klammern zu suchen, und dies hat mich dazu motiviert, nach einer anderen Schnittstelle zu suchen, die ich verwenden kann.
mark999

2
@drknexus Die Leute haben Angst vor der Kommandozeile, fast nur, weil sie in der GUI-Welt von sugar gewachsen sind. Wenn Sie dies vorher herausnehmen, kann ich wetten, dass die Befehlszeile noch einfacher zu erlernen ist - GUIs sind nur voll von unklaren Optionen und Schritten, sind normalerweise fehlerhaft (das Testen einer solchen Schnittstelle ist ein Albtraum und wird nie zu 100% gut gemacht) und neigen dazu, "magische" Automatisierung einzuführen, die eher ein Feind als ein Freund ist. Fragen Sie einen GUI-Benutzer nach seiner / ihrer Erfahrung, und Sie werden eine Bibel eines kleinen Frachtkultes hören - dies ist bei Verwendung einer Konsolen-App niemals der Fall.

2
@drknexus Benutzer dazu zu zwingen, zu viel darüber nachzudenken, anstatt nur "ihren Test durchzuführen", könnte durchaus als eine Funktion angesehen werden, nicht als ein Fehler. Meine Erfahrung zeigt, dass eine Sprache, die den Benutzer dazu zwingt, explizit darzulegen, was er tun möchte, zu einem besseren Verständnis führt.
Fomite

9

Zumindest unter Linux bietet RKWard die beste Funktionalität. Das neue RStudio sieht ebenfalls vielversprechend aus.


Abgeordnet. RKward ist exzellent, da es eine einigermaßen saubere, funktionale Oberfläche mit den meisten grundlegenden Funktionen bietet, die Benutzer benötigen (es ist noch jung, ich bin mir sicher, später werden mehr Funktionen hinzukommen), mit Code. Alles, was Sie R über die Benutzeroberfläche abverlangen, wird direkt unten in Codeform dargestellt, sodass Sie tatsächlich sehen können, was sich hinter den Kulissen abspielt. Es hat auch eine Befehlszeilenkonsole, was bedeutet, dass Sie direkt hineinspringen und basteln können. Die Datenrahmenbearbeitungsoberfläche macht es einfach und angenehm, all die nervigen manuellen Manipulationen von Daten vorzunehmen, die in der Befehlszeile ärgerlich sind.
Naught101

4

Persönlich ESS, aber wie oben erwähnt, fand ich Rcmdr sehr einfach zu bedienen.


3

Ich habe Rattle sowohl zum Erlernen der Verwendung von R als auch für schnelle und schmutzige Data-Mining-Aufgaben verwendet.


3

GUI! = Programmierung

Zu fragen, welche Benutzeroberfläche Ihnen beim Erlernen der Programmierung hilft, ist wie zu fragen, in welchem ​​Lebensmittelgeschäft Sie lernen, wie Sie nach Ihrem eigenen Essen suchen können. Die Verwendung einer GUI ist keine Möglichkeit, das Programmieren zu erlernen .

Die Stärke von R ist, dass es nicht über die grafische Benutzeroberfläche gesteuert wird, sondern Skripte verwendet, die grundsätzlich reproduzierbarere Ergebnisse ermöglichen.

GUIs zur Demonstration spezifischer Themen / Kurzes Backpedaling

Trotzdem halte ich es für nützlich, eine grafische Benutzeroberfläche zu verwenden, um ein bestimmtes Thema zu demonstrieren .

  • Das Paket " latticist" eignet sich hervorragend zum Erstellen von Gitterdiagrammen und zum Erlernen der Gittersyntax.
  • Das PBSmodelling- Paket enthält einige hervorragende Beispiele für GUIs, mit denen Sie bestimmte Modelle ausführen können, z. B. MCMV-Modelle.
  • Das TeachingDemos- Paket enthält anscheinend auch einige gute Demos zu bestimmten Themen.

Rollen Sie Ihre eigene GUI

Das PBSmodelling- Paket enthält auch Tools, mit denen Sie Ihre eigenen GUIs erstellen können . Dies beinhaltet einige erstaunliche Tools für die Projektorganisation und Dokumentation. Vielen Dank, dass Sie Pacific Biological Station!

Mit Rook und Apache können Sie auch leistungsstarke webbasierte GUI-Anwendungen erstellen.

Das Erstellen einer eigenen Benutzeroberfläche ist nicht für Anfänger oder die direkte Antwort auf Ihre Frage geeignet. Wenn Sie jedoch ein fortgeschrittener Benutzer sind, sollten Sie eine GUI erstellen, um ein bestimmtes Thema zu veranschaulichen.

Das installierte "R" ist eine GUI (technisch)

Es ist erwähnenswert, dass die installierte Version von R eine Verknüpfung zu Rgui.exe ist.

Ich weiß, dass Sie nach einer GUI fragen, mit der Sie durch Zeigen und Klicken auf die gesamte Basisfunktionalität von R zugreifen können, und nicht nach einem verherrlichten Wrapper für die Befehlszeile.

Es ist jedoch wichtig zu wissen, dass ein GUI-Wrapper für die Befehlszeile eine GUI ist und eine gültige Antwort auf Ihre Frage ist. Die Befehlszeile ist die einzige Möglichkeit, auf die sich schnell entwickelnde Funktionalität der Leistungsfähigkeit von R und der täglich neu erstellten Pakete zuzugreifen.

Damit...

Die beste GUI ist wieder R Studio

Die beste Schnittstelle für R ist definitiv R Studio .

Für einige Leute ist die StatET / Eclipse- Oberfläche wichtig für ihre leistungsstarken Funktionen, aber R Studio überholt diese Funktionen schnell und fügt neue hinzu.

Revolution R (die kommerzielle Version) verfügt auch über eine grafische Benutzeroberfläche, ist aber nur dann so gut, wenn Sie sich für das Design von MS Visual Studio besonders interessieren. Sie können jedoch auch auf Revolutions Build von R through R Studio oder Eclipse zugreifen, was ebenfalls ein hübscher Trick ist.


2

Ich habe JGR für eine kurze Zeit benutzt, bis klar wurde, dass es schnell den gesamten Speicher meines Systems belegen würde. Ich habe es seitdem nicht mehr benutzt und empfehle, es nicht zu benutzen.


2

Ich empfehle Tinn-R (welches die Abkürzung für Tinn ist nicht Notepad)


2
Ich habe TinnR ausprobiert und mochte es nicht sehr, es schien unpoliert und ungeschickt.
John Salvatier

1
Richtig, ich habe tatsächlich mit Statet zu Eclipse gewechselt. Viel besser.
RockScience

1
Tinn-R war lange Zeit fehlerhaft. Ich empfehle es nicht zu benutzen.
Russellpierce

2

Trotz all der guten Empfehlungen habe ich nichts radikal Besseres als die Standard-Mac-GUI gefunden. R-Studio ist vielversprechend, aber momentan ist es nicht so anpassbar oder anpassungsfähig wie R und BBEdit zum Bearbeiten.


+1. Normalerweise wechsle ich zwischen der Standard-R-GUI und TextWrangler in OS X.
Fomite

2

Ich würde empfehlen, einen Blick auf AirXcell zu werfen . Es handelt sich um eine Online-Berechnungssoftware (Web 2.0) auf R-Basis, die eine recht benutzerfreundliche R-GUI mit einer Befehlszeilenschnittstelle (R-Konsole), einem Code-Editor und verschiedenen anderen Dingen (Datenrahmen-Editor usw.) bietet, die alle online verfügbar sind der Webbrowser.

Siehe Verwenden von AirXcell als Online-R-Konsole .


1

Nachdem ich mit dem gearbeitet habe

  1. (Basis) R
  2. RStudio
  3. Revolution R Enterprise

In der Windows-Umgebung empfehle ich dringend "Revolution R Enterprise".

Ich akzeptiere, dass die Installation im Vergleich zu BaseR und RStudio etwas länger dauert (zwischen 600 und 700 MB), aber der Objektbrowser von Revo R, die einfache Installation von Paketen, die Verwaltung von Variablen usw. usw. gibt es viele Dinge, die - meiner Meinung nach - den Revo R zum besten machen (meiner Meinung nach).

Allerdings ist Revo R, das von Microsoft gekauft wird, für mich einer der Nachteile, da MS letztendlich eine gewinnorientierte Firma ist und seine freie Natur früher oder später ändern kann.


0

Quadstat ist ein kostenloses browserbasiertes Front-End für R und ein Open-Source-Framework für statistische Webanwendungen. Nach dem Absenden einer Computerabfrage wird dem Benutzer die Ausgabe der Anforderung sowie die verwendeten R-Befehle angezeigt. Vor dem Einreichen wird die R-Hilfedatei deutlich angezeigt, damit der Benutzer einige der Interna von R verstehen kann. Ich bin der Projektbetreuer und hoffe, dass Sie die Software nützlich finden.

https://quadstat.com

https://www.drupal.org/project/quadstat


-2

Wenn Sie nicht R codieren möchten, sondern eine grafische Benutzeroberfläche wie SPSS möchten, gibt es eine neue cloudbasierte Software, Number Analytics (). Es basiert auf der Cloud, sodass Sie das Programm nicht installieren müssen. Es ist ein Freemium-Modell, das kostenlos startet. Es ist für Anfänger gedacht, die nicht viel über Statistik wissen. Das größte Verkaufsargument ist, dass die statistischen Ergebnisse interpretiert werden. Farbtabelle und integrierte Grafiken helfen ebenfalls.


3
Ich glaube, Sie sammeln Downvotes, weil der Verdacht besteht, dass Sie mit diesem Unternehmen in Verbindung stehen und dies nicht offengelegt haben. Weitere Informationen finden Sie unter stats.stackexchange.com/help/promotion . Die Leute fragen sich auch genau, wie dieser Beitrag auf die Frage antwortet: Ist diese Software eine RGUI? Der Hype auf dieser Webseite sieht überhaupt nicht so aus.
whuber
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.