Powered By R

Published on Tuesday, May 15, 2018 by Milos Gregor


Programming language R is a favored environment for working with data. The number of R users is already reported in millions. Thanks to its capabilities and functionality it can be used in many forms. Selection from the current options is provided by the following article.

Last Update: July 3, 2018

Basically, R language you can use in six ways.You can use the built-in console, you can process your projects through the integrated development environment (IDE), you can use a number of graphical user interfaces (GUI), you can use R features from other applications or services. R terminal you can attach on your computer or you can use it via several online services (data science platforms). Another option is to use R from other languages, such as from Python or F#. In the following chapters are briefly presented various options and R use cases that you can utilize.

R Distributions IDEs GUIs R From Other Apps R Online R From Other Languages

R Distributions

r-project.org Microsoft R Open Oracle R Enterprice R4Stagraph

In the case of R distributions, we mean the core R runtime - the console interface for running your R scripts. We know the main distribution from r-project.org site. All other distributions I know are based on this distribution. If you are using R in whatever form, it is 99.9 % certain that you are using this distribution. This distribution is multiplatform and distributed entirely under open-source licenses (mostly GPL).

The second well-known distribution of R maintains and develops Mistrosoft (MRO). Formerly Revolution Analytics. MRO is an enhanced distribution for improved performance, reproducibility and platform support.

The third distribution is offered by Oracle (ORE). This company has also enriched the basic R distribution by packages that facilitate the integration with Oracle databases.

Finally, the last distribution is R4Stagraph. This distribution have pre-installed all R packages used by Stagraph software and does not contain any modifications to the basic R distribution.

R IDEs

R Studio R Tools for Visual Studio (RTVS) RCode RGUI Emacs with ESS Package Tinn-R RGedit Vim R Plugin StatET for R Architect RKWard R-box

Probably the most commonly users works with the R language through an external IDE. In this case, we consider as IDE (integrated development environment) a tool / application that simplifies custom R scripts writing, editing and debugging. IDE is an environment where the output is the source code that defines your analysis and data processing. The difference between IDE and GUI is that the IDE helps you write R scripts and GUI writes it automatically, according to the steps you have defined through the visual interface (menus, lists, buttons). In the field of R IDE, you have very extensive options at the time and we will present them briefly. In this section we will introduce only desktop solutions. R IDE as online service will be presented in the R Online section.

R Studio
If you work with R often, you probably use the R Studio. This is an open-source IDE (desktop or server based) that contains all the features we expect from a similar tool. At present, this IDE is a defacto standard. R Studio contains many features to help you with every step. Additionally, the company is intensively working on R improving through the development of open-source R packages (Tidyverse, R Markdown and other) and running environments such as Shiny Server.

R Tools for Visual Studio (RTVS)
I think RTVS is the second best IDE tool at present. RTVS is integrated as a plugin directly into Visual Studio. If you work also with other languages, you will certainly appreciate this tool.

RCode
RCode is a relatively new R IDE that includes several interesting features such as direct editing of variables, enriched script editor, interactive visualization of variables, flexible layout, file explorer and more. It will be interesting to follow its further development.

RGUI
RGUI.exe is a very simple IDE and is distributed along with the R installation. It contains only very few features that we would expect from the IDE. After launch, you only see the R console. You can manually display a script editor without features such as code autocompletion or syntax highlighting. In spite of simplicity, it is a very often used interface for R scripts writing and executing.

Emacs with ESS Package
Emacs with ESS Package is an IDE, designed to support editing of scripts and interaction with various statistical analysis programs such as R, S-Plus, SAS, Stata and OpenBUGS/JAGS. In community is relatively popular and often used.

Tinn-R
Tinn-R is another IDE that you can use to analyse your data in R. This tool is created in Object Pascal and contains many features that we know from similar R IDE tools.

RGedit
Simple lightweight R IDE for Linux OS. The latest update was released in 2013.

Vim R Plugin
This plugin improves Vim's support for editing R code and makes it possible to integrate Vim with R.

StatET for R
StatET is an Eclipse based IDE for R and offers a set of mature tools for R coding and package building. This includes a fully integrated R Console, Object Browser and R Help System, whereas multiple local and remote installations of R are supported.

Architect
Architect is an IDE that focuses specifically on the needs of the data scientist. IDE supports multiple languages such as R, Python, Julia, Scala or C++.

RKWard
RKWard is an easy to use and extensible IDE/GUI for R. It aims to combine the power of the R language with the ease of use of commercial statistics tools. RKWard's features include spreadsheet-like data editor, syntax highlighting, code folding and completion, data import, plot preview and browsable history, R package management, workspace browser and GUI dialogs for all kinds of statistics and plots.

R-Box
R-Box is an R package for Sublime Text editor that improve your R coding experience.

R GUIs

R Commander Rattle Deducer Stagraph Jamovi JASP Red R R AnalyticFlow BlueSky Statistics Exploratory ggraptR Radiant Latticist RClusterGUI

As R GUI (graphical user interface) we consider applications that provides a visual interface which allows you to use R features without the need of manual scripts writing (point-and-click or drag-and-drop). There is no sharp border between IDE and GUI applications. Very often R GUI apps allows you to write custom scripts. This makes it possible to extend these applications. An example can be data import from specific sources (e.g. web services).

R GUI apps can be divided into general-purpose and specific. General-purpose applications make available general R functions, such as functions for data wrangling, data visualization or statistical analysis. Conversely, specific-purpose applications provides only a selected set of features that targets selected area of data analysis (e.g. spatial data analysis or clustering functions). In the following text are listed the most widely used R GUI applications.

R Commander
The program enables analysts to access a selection of commonly-used R commands using a simple interface that should be familiar to most computer users. It also serves the important role of helping users to implement R commands and develop their knowledge and expertise in using the command line, an important skill for those wishing to exploit the full power of the program.

Rattle
Rattle is a popular GUI for data mining in R. It presents statistical and visual summaries of data, transforms data so that it can be readily modeled, builds both unsupervised and supervised machine learning models from the data, presents the performance of models graphically, and scores new datasets for deployment into production. A key features is that all of your interactions through the graphical user interface are captured as an R script that can be readily executed in R independently of the Rattle interface.

Deducer
Deducer is designed to be a free, easy to use alternative to proprietary data analysis software such as SPSS, JMP, and Minitab. It has a menu system to do common data manipulation and analysis tasks, and an excel-like spreadsheet to view and edit data frames.

Stagraph
Simple and powerful "point-and-click" GUI for data import, data wrangling and data visualization. This tool uses dominantly R packages from the Tidyverse group.

Jamovi
Jamovi is a relatively new "statistical spreadsheet", designed from the ground up to be easy to use. Jamovi is an alternative GUI based on R to costly statistical products such as SPSS and SAS.

JASP
JASP is an open-source project that provides intuitive interface for standard statistical analysis (e.g. ANOVA, correlation, descriptive statistics, regression analysis, T-Test, ...).

Red R
Red R is a gui that provides work-flow style of showing and setting up data analysis.

R AnalyticFlow
R AnalyticFlow is a general purpose GUI that organizes data analysis processes in a workflow. Visualized processes can be reproduced easily and accurately by simply using a mouse.

BlueSky Statistics
Statistics application and development framework built on R. This tool provides familiar powerful user interface available in mainstream statistical applications like SPSS or SAS. Released under Free and Commercial Edition.

Exploratory
Very interesting Online / Desktop interface for data import, data wrangling, data visualization, machine learning, dashboarding and results sharing based on R.

ggraptR
Simple web based GUI that allows you to create an interactive data visualizations.

Radiant
Radiant is an open-source, platform-independent, browser-based interface for business analytics in R. The application is based on the Shiny package and can be run locally or on a server.

Latticist
A graphical user interface for exploratory visualization using the lattice R package. Released as an R package.

RClusterGUI
The purpose of this tool is to integrate cluster methods, exploration via metadata-based data subsets, and visualization of data and clusters in a user friendly interface.

R From Other Apps

A popular way to extend the existing functionality of any program that works with data (in any form) is to integrate it with the R language. You can use features that are not directly supported in the existing interface. This integration allows you to write the R script that process your data from the main application in R terminal. After execution, the result is imported back into the program. This feature has many programs and platforms. As an example, we can state the following:

R Online

R Studio Server Shiny Apps RStudio Connect RStudio Cloud Jupyter notebook Microsoft Machine Learning Server R-Brain Displayr Dataiku OpenCPU ownR Quadstat Jdoodle Number Analytics

In the previous text, selected applications have been described. All of these applications operate dominantly in "offline mode" as desktop applications or services. Nowadays, a number of R applications are running in the form of web services. Some are R-only platforms, other are general-purpose tools for the data science area and supports multiple languages and technologies such as R, Python and Julia. Development in “R as Online Service" is currently the most dynamic.

R Studio Server
RStudio Server lets you access RStudio IDE from anywhere using a web browser. R Studio Server Pro delivers the team productivity, security, centralized management, metrics, and commercial support that professional data science teams need to develop at scale.

Shiny Apps
Scalable web service for hosting shiny applications written in R language.

RStudio Connect
RStudio Connect is a publishing platform for the work your teams create in R. This platform share your shiny applications, R markdown reports, plumber APIs, dashboards, plots, and more in one convenient place. Use push-button publishing from the RStudio IDE, scheduled execution of reports, and flexible security policies to bring the power of data science to your entire enterprise.

RStudio Cloud
RStudio Cloud is an online environment to do, share, teach and learn data science using R. You can create your analyses directly from your browser (no software to install and nothing to configure on your computer).

Jupyter notebook
Jupyter notebook is an open-source web application that allows you to create and share documents that contain live code, equations, visualizations and narrative text. The Notebook has support for over 40 programming languages, including Python, R, Julia and Scala.

Microsoft Machine Learning Server
Microsoft Machine Learning Server is flexible enterprise platform for analyzing data at scale, building intelligent apps, and discovering valuable insights across your business with full support for Python and R. R support is built on a legacy of Microsoft R Server 9.x and Revolution R Enterprise products.

R-Brain
R-Brain is online based solution defined as IDE, notebook and markdown editor for SQL, R and Python languages.

Displayr
Displayr is a data science, visualization, and reporting platform. This platform is GUI based and supports drag-&-drop and point-&-click analyses.

Dataiku
Dataiku DSS is the collaborative data science software platform for teams of data scientists, data analysts and engineers to explore, prototype, build and deliver data products more efficiently.

OpenCPU
R (and Python) made available via APIs and web applications (Shiny, Flask and Dash) in a secure production environment.

ownR
OpenCPU is a system for embedded scientific computing and reproducible research. The OpenCPU server provides a reliable and interoperable HTTP API for data analysis based on R. You can either use the public servers or host your own.

Quadstat
Quadstat is a free online statistical tool for analysis and learning that also serves as a data repository.

Jdoodle
Online compiler and editor for 68 languages. Supports also R.

Number Analytics
Simple online GUI for statistical analysis focused to beginners, students and business people.

R From Other Languages

R language is very good tool for data analysis. Other languages are focused on desktop applications or web services development. By combining them, you can quickly and efficiently create complex and robust solutions. Therefore, R is often used from other languages. On the Internet, you can find many use cases. As an example, the following languages may be mentioned:

Conclusions

The R language is today a well known, widely supported and mature technology. If you know programming in that language, it can help you to solve a number of problems.

In the article, we looked where and how you can benefit from the R platform. If you know this language, you can use it mostly through IDE tools. For less sophisticated users, there are many GUI applications that make R features accessible via the visual interface, without the need of manual coding. You can use R language in desktop applications or using different types of web services.

This article contains only a part of the R language use cases. If you know about other that are not mentioned in article, do not hesitate to contact me via mail or discussion. I’d like to learn about new option and I will add it to the list.