By Robert A. Muenchen, updated 2/26/2020
Having completed several detailed reviews of Graphical User Interfaces (GUIs) for R, 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 BlueSky is currently in the lead. That software has just released a new version (2/26/2020) giving them the edge, but jamovi, JASP, and RKWard have also released new versions (or major new features) in the last three months. jamovi has gone from being non-existent before 2017 to be in third place, so its growth rate is quite high.
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 BlueSky out front. In last year’s plot, R Commander had slightly more analytic features, but now BlueSky has surpassed it. BlueSky management reports in the last year they gained several large customers who have been requesting they add new features, and have been contributing their own extensions. 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 has jumped from the lowest number of graphics feature a year ago to being in third place now. That project is well funded through government grants.
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 is well away from the pack here too. BlueSky has a strong set of data management tools, plus its output is in true word processing tables saving you the trouble of formatting it yourself. R Commander is in second place on both of the dimensions of figure 3. While Rattle is in second place in graphics features, it has minimal data management capabilities. JASP’s last place position on usability is due to its developer’s perspective that data management can be handled externally in spreadsheets and databases before importing the data into JASP.
These plots help show us three main overall feature sets, but each package offers features 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 present them in alphabetical order.
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. 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. If you’re wanting to learn R code, seeing what BlueSky uses for each step can help. BlueSky uses the popular, but controversial, tidyverse style while most of the other GUIs use base R functions. BlueSky’s 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, though Mac and Linux versions are in development and should be done by the end of 2020.
Deducer – This has a very nice-looking interface, and it’s probably the first R GUI to offer output in 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. jamovi can help you learn R code by showing what it does at each step, though it uses its own functions from the jmv package. While those functions are not standard R, they do combine the capability of many R functions in each one.
JASP – The biggest advantage JASP offers is its emphasis on Bayesian analysis. If that’s your preference, this might be the one for you. Another strength is JASP’s Machine Learning module, a recent addition. 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. 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 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.
R Commander – This is the oldest GUI, having been around since at least 2005. There are an impressive 41 plug-ins developed for it. It is currently one of only two R GUIs that saves R Markdown files (the other being RKWard), 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. R Commander 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.
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) use 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, and another point for large multiples, which repeat a full-sized graph for each level of a factor(s). 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?|