By Robert A. Muenchen, Updated June 17, 2019
With several detailed reviews of Graphical User Interfaces (GUIs) for R to consider, let’s compare them. It’s easy enough to count their features and plot them, so let’s start there. I’m basing the counts on the number of menu items in each category. That’s not too hard to get, but it’s far from perfect. Some software has fewer menu choices, depending instead on dialog box choices. Studying every menu and dialog box would be too time-consuming, so be aware of this limitation. I’m putting the details of each measure in the appendix so you can adjust the figures and create your own graphs. If you decide to make your own graphs, I’d love to hear from you in the comments below.
Figure 1 shows the total number of features offered by each R GUI. We see that R Commander and BlueSky Statistics are the clear leaders, with the latter slightly in the lead.
Next, let’s break those features down into categories. Figure 2 shows the number of analytic methods each software supports on the x-axis and the number of graphics methods on the y-axis. The analytic methods count combines statistical features, machine learning / artificial intelligence ones (ML/AI), and the ability to create and manipulate R model objects. The graphics features count totals up the number of bar charts, scatterplots, etc. each package can create.
The ideal place to be in this graph is in the upper right corner. We again see R Commander and BlueSky out front, but now it’s clear that R Commander has lightly more analytic features, while BlueSky offers more types of graphs. Rattle stands out as having the second greatest number of graphics features, but its focus on ML/AI limits its number of statistical methods, lowering its combined analytic score. JASP is the lowest on graphics features and second from the bottom on analytic ones.
Next, let’s swap out the y-axis for general usability features. These consist of a variety of features that make your work quicker and easier, including data management capabilities (see appendix for details).
Figure 3 shows that BlueSky and R Commander still in the top two positions overall, but now Deducer has nearly caught up with R Commander on the number of usability features. That’s due to its reasonably strong set of data management tools, plus its output is in true word processing tables saving you the trouble of formatting it yourself. Rattle is much lower in this plot since, while its graphics capabilities are strong (at least in relation to ML/AI tasks), it has minimal data management capabilities.
These plots help show us three main overall feature sets, but each package offers things that the others don’t. Let’s look at a brief overview of each. Remember that each of these has a detailed review that follows my standard template. I’ll start with the two that have come out on top, then follow in alphabetical order.
The R Commander – This is the oldest GUI, having been around since at least 2005. There are an impressive 43 plug-ins developed for it. It is currently the only R GUI that saves R Markdown files, but it does not create word processing tables by default, as some of the others do. The R code it writes is classic, rarely using the newer tidyverse functions. It works as a partner to R; you install R separately, then use it to install and start R Commander. It makes it easy to blend menu-based analysis with coding. If your goal is to learn to code using base R, this is an excellent choice.
BlueSky Statistics – This software was created by former SPSS employees and it shares many of SPSS’ features. BlueSky is only a few years old, and it converted from commercial to open source mid-way through 2018. Its developers have been adding features at a rapid rate. Although BlueSky and R Commander offer many of the same features, they do them in different ways. When using BlueSky, it’s not initially apparent that R is involved at all. Unless you click the “Syntax” button included in every dialog box, you’ll never see the R code or the code editor. Its output is in publication-quality tables which follow the popular style of the American Psychological Association. It’s stronger than most of the others at AI/ML and psychometrics. However, it is available only on Windows, while the others are all available on Mac and Linux too.
Deducer – This has a very nice-looking interface, and it’s probably the first R GUI to offer true APA-style word processing tables. Being able to just cut and paste a table into your word processor saves a lot of time and it’s a feature that has been copied by several others. Deducer was released in 2008, and when I first saw it, I thought it would quickly gain developers. It got a few, but development seems to have halted. Deducer’s installation is quite complex, and it depends on the troublesome Java software. It also uses JGR, which never became as popular as the similar RStudio. The main developer, Ian Fellows, has moved on to another very interesting GUI project called Vivid.
jamovi – The developers who form the core of the jamovi project used to be part of the JASP team. Despite the fact that they started a couple of years later, they’re ahead of JASP in several ways at the moment. Its developers decided that the R code it used should be visible and any R code should be executable, features that differentiated it from JASP. jamovi has an extremely interactive interface that shows you the result of every selection in each dialog box (JASP does too). It also saves the settings in every dialog box, and lets you re-use every step on a new dataset by saving a “template.” That’s extremely useful since GUI users often prefer to avoid learning R code. jamovi’s biggest weakness its dearth of data management tasks, though there are plans to address that. The most recent version of jamovi borrowed the Bayesian analysis methods from JASP, making those two tied as the leaders in that approach.
JASP – The biggest advantage JASP offers is its emphasis on Bayesian analysis. If that’s your preference, this might be the one for you. At the moment JASP is very different from all the other GUIs reviewed here because it can’t show you the R code it’s writing, and you can’t execute your own R code from within it. Plus the software has not been open to outside developers. The development team plans to address those issues, and their deep pockets should allow them to complete those enhancements eventually.
Rattle – If your work involves ML/AI (a.k.a. data mining) instead of standard statistical methods, Rattle may be the best GUI for you. It’s focused on ML/AI, and its tabbed-based interface makes quick work of it. However, it’s the weakest of them all when it comes to statistical analysis. It also lacks many standard data management features. The only other GUI that offers many ML/AI features is BlueSky.
RKWard – This GUI blends a nice point-and-click interface with an integrated development environment that is the most advanced of all the other GUIs reviewed here. It’s easy to install and start, and it saves all your dialog box settings, allowing you to rerun them. However, that’s done step-by-step, not all at once as jamovi’s templates allow. The code RKWard creates is classic R, with no tidyverse at all.
I hope this brief comparison will help you choose the R GUI that is right for you. Each offers unique features that can make life easier for non-programmers. Instructors of introductory classes in statistics or ML/AI should find these enable their students to focus on the material rather than on learning the R language. If one catches your eye, don’t forget to read the full review of it here.
Writing this set of reviews has been a monumental undertaking. It would not have been possible without the assistance of Bruno Boutin, Anil Dabral, Ian Fellows, John Fox, Thomas Friedrichsmeier, Rachel Ladd, Jonathan Love, Ruben Ortiz, Christina Peterson, Josh Price, Eric-Jan Wagenmakers, and Graham Williams.
Appendix: Guide to Scoring
In the figures, Analytic Features adds up: statistics, machine learning / artificial intelligence, the ability to create R model objects, and the ability to validate models using techniques such as k-fold cross-validation. While this generally entails counting menu entries of the initial installation, there are a few exceptions. First, since JASP puts Bayesian on menus while jamovi borrowed the same capability as a plug-in, I count the menus created by that plug-in. Second, regarding support for distributions, some use up to four menu entries for every distribution it supports (e.g. to get probabilities, plot distributions, generate samples from, etc.) while others put all (or most) of that into a single dialog, I count each distribution as one regardless of approach. Finally, some GUIs (e.g. Deducer) uses one dialog box to do multiple tasks, such as parametric and non-parametric versions of the same type of test. In that case, I count them as if they had been menu choices rather than dialog-box choices. That is, I try to give each GUI as much credit as possible.
When it comes to plug-ins, I count them all as being “analytic” since the great majority of them offer statistical methods. However, a few do offer graphs or graph and analysis combinations. Counting them all as analytic saves me a significant amount of work differentiating them.
The Graphics Features is the sum of two rows, the number of graphs the software can create plus one point for small multiples, or facets, if it can do them. Usability is everything else, with each row worth 1 point, except where noted.
|How many can it run on?|
|Is it done in one step?|
|Does it start on its own without starting R, loading
|How many files types can it import?|
|How many databases can it read from?|
|How many file formats can it write to?|
|Data Editor||Does it have a data editor?|
|Can work on
|Can it work on more than one file at a time?|
|Does it show metadata in a variable view, allowing for many
fast edits to metadata?
|How many data management tasks can it do?|
|Can it create e.g. mean score across many variables?|
|Can it transform many variables at once?|
|Graph Types||How many graph types does it have?|
|Can it show small multiples (facets)?|
|Model Objects||Can it create R model objects?|
|Statistics||How many statistical methods does it have?|
|Plug-ins||How many plug-in modules does it have?|
|ML/AI||How many ML / AI methods does it have?|
|Does it offer model validation (k-fold, etc.)?|
|R Code IDE||Can you edit and execute R code?|
|Does it let you re-use all work without code?|
|Does it let you rerun all work using code?|
|Does it manage packages for you?|
|Does output have a table of contents?|
|Re-order||Can you re-order output?|
|Publication Quality||Is output in publication quality by default?|
|R Markdown||Can it create R Markdown?|
|Can you add comments or titles to output?|
|Does it do group-by repetition of any other task?|
|Does it save equivalent to broom’s tidy, glance, augment? (They earn 1 point for each)|
|Developer tools||Does it offer developer tools?|