73
votes
$\begingroup$

Is there any GUI for R that makes it easier for a beginner to start learning and programming in that language?

$\endgroup$
6
  • 2
    $\begingroup$ List available here. $\endgroup$
    – user22
    Commented Dec 9, 2010 at 14:04
  • 17
    $\begingroup$ I use Emacs + ESS so I guess I would not be of much help here. However, for your information, there will be a special issue on R GUIs (expected for mid 2011). $\endgroup$
    – chl
    Commented Dec 9, 2010 at 15:08
  • 5
    $\begingroup$ While a frequently asked question, note that the scripting is an essential part of R's "flavor". If you prefer GUIs, R is not the way to go. $\endgroup$
    – JohnRos
    Commented Sep 4, 2012 at 8:39
  • 4
    $\begingroup$ @JohnRos: I couldn't disagree more. I spend most of my working time in R, and I can't stand not having a GUI - just look at a feature list of any GUI to know what you are missing out on. $\endgroup$
    – Cookie
    Commented Dec 4, 2012 at 16:09
  • 2
    $\begingroup$ Is there a semantic confusion happening here? I understood the OP to be asking for an Integrated Development Environment. $\endgroup$ Commented Sep 15, 2014 at 19:13

15 Answers 15

37
votes
$\begingroup$

I would second @Shane's recommendation for Deducer, and would also recommend the R Commander by John Fox. The CRAN package is here. It's called the R "Commander" because it returns the R commands associated with the point-and-click menu selections, which can be saved and run later from the command prompt.

In this way, if you don't know how to do something then you can find it in the menus and get an immediate response for the proper way to do something with R code. It looks like Deducer operates similarly, though I haven't played with Deducer for a while.

The base R Commander is designed for beginner-minded tasks, but there are plugins available for some more sophisticated analyses (Deducer has plugins, too). Bear in mind, however, that no GUI can do everything, and at some point the user will need to wean him/herself from pointing-and-clicking. Some people (myself included) think that is a good thing.

$\endgroup$
5
  • 3
    $\begingroup$ +1 for Rcmdr. It's nice for when one is just learning R, and offers more of a gateway to a good statistics package than SPSS or Minitab, but the code it writes is needlessly verbose, often. A scatterplot produced in Rcmdr: scatterplot(tab~pct, reg.line=FALSE, smooth=FALSE, spread=FALSE, boxplots=FALSE, span=0.5, data=senate.race), when most of those parameters were defaults to begin with. It writes some very wordy code. $\endgroup$ Commented Dec 9, 2010 at 23:00
  • $\begingroup$ @Christopher I agree with you; sometimes the code is wordy. It comes from Tcl/Tk and how Rcmdr is currently written: it would take a substantial rewrite to put in checks for whether the default is selected (and return an abbrev. version in that case). But, yes, it would be an improvement. A redeeming feature is that it's good code, in that it encourages good practice (FALSE instead of F, etc.). This is important for beginners. $\endgroup$
    – user1108
    Commented Dec 9, 2010 at 23:23
  • 1
    $\begingroup$ This is true. Another advantage to this is allowing beginners to see what parameters a function takes without using the ? command. Using FALSE instead of F is a great point. I once saw a program give an incorrect output because the programmer had earlier set the result of an ANOVA to a variable called "F". $\endgroup$ Commented Dec 10, 2010 at 3:34
  • 1
    $\begingroup$ I don't know if something has changed, but last time I checked Rcmdr didn't run out of the box on the Mac (some limitation with installing the Tcl/Tk libraries). As such, though I like it, I've avoid suggesting it for new users. Did this change? $\endgroup$ Commented Oct 15, 2011 at 20:46
  • $\begingroup$ @drknexus As far as I know, you are exactly right: Rcmdr takes additional work for Mac (because of Tcl/Tk). The audience I serve almost entirely use Windows (sigh!), so I ask the one or two people per semester with Macs to see me if they have trouble which hasn't been much of a problem. But, yes, you are right. $\endgroup$
    – user1108
    Commented Oct 18, 2011 at 2:02
119
votes
$\begingroup$

You can also try the brand-new RStudio. Reasonably full-featured IDE with easy set-up. I played with it yesterday and it seems nice.

Update

I now like RStudio even more. They actively implement feature requests, and it shows in the little things getting better and better. It also includes Git support (including remote syncing so Github integration is seamless).

A bunch of big names just joined so hopefully things will continue getting even better.

Update again

And indeed things have only gotten better, in rapid fashion. Package build-check cycles are now point-and-click, and the little stuff continues to improve as well. It now comes with an integrated debugging environment, too.

$\endgroup$
12
  • 6
    $\begingroup$ After a couple of revs, it will be the best thing going. Its first beta release is already eminently usable and beats most other options IMO. $\endgroup$
    – JMS
    Commented Mar 3, 2011 at 4:53
  • 2
    $\begingroup$ I liked it too. It is for more advanced users that basically just need a better shell that RGui. Emacs+ESS yet has much more features but not everybody likes Emacs. RStudio seems to be simple but very effective at what it wants to do. I look forward to see how it evolves over time. $\endgroup$
    – AlefSin
    Commented Mar 3, 2011 at 16:58
  • 1
    $\begingroup$ I deeply love RStudio. It is very easy to set up and run and handles Sweave and Tex files. I will probably switch to Emacs one day but for a beginner who wants to write code RStudio is definitely the way to go. $\endgroup$ Commented Jun 13, 2011 at 10:31
  • 1
    $\begingroup$ @EpiGrad One of the advantage of RStudio (from what I've seen as I am more versed into Emacs/ESS or the console) is that it doesn't break the interactive R workflow: R is a statistical programming language; no GUI will ever offer that flexibility. $\endgroup$
    – chl
    Commented Nov 3, 2011 at 23:12
  • 3
    $\begingroup$ I recomend RStudio... Yes, it's not a GUI. Yes, it's more like an IDE... but after all, is a nice piece of software to use. Interactive console, script editor, plots, and all the features you need to work efficiently with R. Considering that R is just a CLI, RStudio is a nice way to simplify your work $\endgroup$
    – Barranka
    Commented Oct 2, 2012 at 21:11
24
votes
$\begingroup$

This has been answered several times on StackOverflow. The top selections on there seem to consistently be Eclipse with StatET or Emacs with ESS.

I wouldn't say that there are any good gui's to make it easier to learn the language. The closest thing would be deducer from Ian Fellows. But there are plenty of other resources (books, papers, blogs, packages, etc.) available for learning.

$\endgroup$
1
  • 6
    $\begingroup$ Well done! The purpose of a GUI is not to learn the language, but to make learning the language unnecessary. (edit:) I didn't know that some GUI's had the features described by G. Kay Kerns. I suppose that would help you in the early stages of learning the language. $\endgroup$ Commented Dec 10, 2010 at 0:04
13
votes
$\begingroup$

I think that the command line is the best interface, and especially for the beginners. The sooner you'll start with console, the sooner you'll find out that this is the fastest, the most comfortable and what's most important the only fully non-limiting way of using R.

$\endgroup$
13
  • 6
    $\begingroup$ Honestly, I don't agree. Scripting is much more powerful. $\endgroup$ Commented Dec 10, 2010 at 2:47
  • 5
    $\begingroup$ It is important to stress to new users that they should almost always use a script window and ctrl-R rather the direct command line, both for when things do not work and need to be changed, and for when they do work and are worth saving for later use. $\endgroup$
    – Henry
    Commented Mar 1, 2011 at 14:54
  • 3
    $\begingroup$ The main thing I find annoying about the standard Windows RGui is the lack of a feature to show matching brackets. I tend to waste a non-negligible amount of time trying to find missing or extra brackets, and this one thing has motivated me to start looking for another interface to use. $\endgroup$
    – mark999
    Commented Jun 11, 2011 at 3:59
  • 2
    $\begingroup$ @drknexus People are afraid of command line almost only because they have been grown in sugar GUI world. If you take this prior out, I can bet that the command line is even easier to learn -- GUIs are just full of unclear options and steps, are usually buggy (testing such interface is a nightmare and is never done 100% well) and tend to introduce "magic" automation which is more an enemy than a friend. Go and ask any GUI user about her/his experience and you will hear a bible of a small cargo cult -- it is never the case when using a console app. $\endgroup$
    – user88
    Commented Oct 15, 2011 at 21:58
  • 2
    $\begingroup$ @drknexus Forcing users to think about it too much, rather than just "run their test" might very well be considered a feature, not a bug. My experience suggests that a language that forces the user to explicitly lay out what they want to do tends to result in greater understanding. $\endgroup$
    – Fomite
    Commented Oct 16, 2011 at 4:48
9
votes
$\begingroup$

At least on linux, RKWard offers the best functionality. The new RStudio appears quite promising as well.

$\endgroup$
1
  • $\begingroup$ Seconded. RKward is excellent, as it presents a reasonably clean, functional interface, with most of the basic functionality users will need (it's young, more will come later, I'm sure), with code. Everything that you request R to do through the UI is presented in code form just below, so you can actually see what's going on behind the scenes. It also has a command line console, which means you can jump straight in and tinker. The dataframe editing interface makes it nice and easy to do all those annoying manual manipulations of data that are a pain on the command line. $\endgroup$
    – naught101
    Commented Apr 20, 2012 at 4:46
4
votes
$\begingroup$

Personally ESS, but as stated above i have found Rcmdr very easy to use.

$\endgroup$
3
votes
$\begingroup$

I used Rattle to both learn how to use R and for quick and dirty data mining tasks.

$\endgroup$
3
votes
$\begingroup$

GUI != Programming

Asking which GUI will help you learn programming is like asking which grocery store will help you learn how to hunt for your own food. Using a GUI is not a way to learn programming.

The power of R is that it's not GUI driven, it uses scripts which fundamentally allow for more more reproducible results.

GUIs to demonstrate specific topics / Brief backpedaling

That having been said, I do think it's useful to use a GUI to demonstrate a single specific topic.

  • The latticist package is awesome for creating lattice graphs and learning lattice syntax.
  • The PBSmodelling package has some wonderful examples of GUIs that allow you to run specific models, such as MCMV models.
  • The TeachingDemos package is also seems to have some good demos of specific topics.

Roll your own GUI

The PBSmodelling package also has tools that allow you to make your own GUIs. This includes some amazing tools for project organization and documentation. Thank you Pacific Biological Station!

Also, by using Rook and Apache you can also make powerful web-based GUI applications.

Making your own GUI is not appropriate for beginners or the direct answer to your question. However, if you're an advanced user then you might want to consider making a GUI to demonstrate a particular topic.

The installed "R" is a GUI (technically)

It's worth noting that the installed version of R is a shortcut to Rgui.exe.

I know that you're asking for a GUI that let's you access all of the base functionality of R by pointing and clicking, not a glorified wrapper for the command line.

However, it's important to realize that a GUI wrapper for the command line is a GUI, and it's a valid answer to your question. The command line is the only way that you can get access to the rapidly evolving functionality of the power of R and the freshly packages authored daily.

So...

Again, the best GUI is R Studio

The best interface for R is definitely R Studio.

For some people the StatET / Eclipse interface is important for it's powerful features, but R Studio is rapidly overtaking those features and adding new ones.

Revolution R (the commercial version) also has a GUI, but it's not so great unless you are deeply passionate about the design of MS Visual Studio. However, you can access Revolution's build of R though R Studio or Eclipse, so that's a pretty neat trick too.

$\endgroup$
2
votes
$\begingroup$

I used JGR for a short while, until it became apparent it would quickly consume all the memory on my system. I have not used it since, and recommend you do not use it.

$\endgroup$
2
votes
$\begingroup$

I recommend Tinn-R (Which is the acronym for Tinn is not Notepad)

$\endgroup$
3
  • 2
    $\begingroup$ I tried TinnR and didn't like it much, it seemed unpolished and clumsy. $\endgroup$ Commented Mar 1, 2011 at 17:00
  • 1
    $\begingroup$ True, I actually changed to Eclipse with Statet. Much better. $\endgroup$ Commented Mar 2, 2011 at 8:03
  • 1
    $\begingroup$ Tinn-R has been buggy for a long time. I recommend against using it. $\endgroup$ Commented Oct 15, 2011 at 20:53
2
votes
$\begingroup$

Despite all of the good recommendations, I've not found anything radically better than the default Mac GUI. R-Studio shows promise, but it's not currently that much more customizable or featureful than R and, say, BBEdit to edit.

$\endgroup$
1
  • $\begingroup$ +1. I usually bounce between the default R GUI and TextWrangler in OS X. $\endgroup$
    – Fomite
    Commented Oct 16, 2011 at 5:01
2
votes
$\begingroup$

I would recommend having a look at AirXcell. It's an online (Web 2.0) calculation software based on R which provides a quite usable R GUI with a command line interface (The R console) a code editor, and various other things (data frame editor, etc.), all online from within the web browser.

See Use AirXcell as an online R console.

$\endgroup$
1
vote
$\begingroup$

Having worked with the

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

in Windows environment, I strongly suggest "Revolution R Enterprise".

I accept that its installing takes little longer (it is 600-700MB) if compared with BaseR and RStudio, but anyway, the Object Browser of Revo R, the easiness of package installation procedure, management of variables, etc. etc. there are many things that - according to me - makes Revo R the best one (acc. to me).

That said, Revo R being purchased by Microsoft is - to me- one of its drawbacks since MS is eventually profit-oriented firm and may change its free nature sooner or later.

$\endgroup$
0
votes
$\begingroup$

Quadstat is a free browser-based front-end to R and also an open-source statistical web application framework. After submitting a computing query, the user is presented with output from the request and also the R commands used. Prior to submission, the R help file is clearly displayed so that the user may understand some of the internals of R. I am the project maintainer and hope you find the software useful.

https://quadstat.com

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

$\endgroup$
-2
votes
$\begingroup$

If you don't want to code R, but want graphical user interface like SPSS, there is a new cloud based software, Number Analytics (). It is based on cloud so you don't need to install the program. It is freemium model starting free. It is for beginners who don't have much knowledge about statistics. The biggest selling point is that it does interpret the statistical results. Color table, and built-in graphs also helps.

$\endgroup$
1
  • 3
    $\begingroup$ I believe you may be collecting downvotes because there is a strong suspicion you are connected with this company and have not disclosed that. Please see stats.stackexchange.com/help/promotion. People also are wondering exactly how this post responds to the question: is this software an R GUI? The hype on that web page doesn't look like that at all. $\endgroup$
    – whuber
    Commented Jan 20, 2015 at 16:25

Not the answer you're looking for? Browse other questions tagged or ask your own question.