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. Radiant was developed by Vincent Nijs. Please use the issue tracker on GitHub to suggest enhancements or report problems: https://github.com/radiant-rstats/radiant.design/issues. For other questions and comments please use radiant@rady.ucsd.edu.
There are two youtube playlists with video tutorials. The first provides a general introduction to key features in Radiant. The second covers topics relevant in a course on business analytics (i.e., Probability, Decision Analysis, Hypothesis Testing, Linear Regression, and Simulation).
Radiant is interactive. Results update immediately when inputs are
changed (i.e., no separate dialog boxes) and/or when a button is pressed
(e.g., Estimate
in Model > Estimate > Logistic
regression (GLM)). This facilitates rapid exploration and
understanding of the data.
Radiant works on Windows, Mac, or Linux. It can run without an Internet connection and no data will leave your computer. You can also run the app as a web application on a server.
To conduct high-quality analysis, simply saving output is not enough.
You need the ability to reproduce results for the same data and/or when
new data become available. Moreover, others may want to review your
analysis and results. Save and load the state of the application to
continue your work at a later time or on another computer. Share state
files with others and create reproducible reports using Rmarkdown. See also the
section on Saving and loading state
below
If you are using Radiant on a server you can even share the URL (include the SSUID) with others so they can see what you are working on. Thanks for this feature go to Joe Cheng.
Although Radiant’s web-interface can handle quite a few data and analysis tasks, you may prefer to write your own R-code. Radiant provides a bridge to programming in R(studio) by exporting the functions used for analysis (i.e., you can conduct your analysis using the Radiant web-interface or by calling Radiant’s functions directly from R-code). For more information about programming with Radiant see the programming page on the documentation site.
Radiant focuses on business data and decisions. It offers tools, examples, and documentation relevant for that context, effectively reducing the business analytics learning curve.
In Rstudio you can start and update Radiant through the
Addins
menu at the top of the screen. To install the latest
version of Radiant for Windows or Mac, with complete documentation for
off-line access, open R(studio) and copy-and-paste the command
below:
options(repos = c(RSM = "https://radiant-rstats.github.io/minicran", CRAN = "https://cloud.r-project.org"))
install.packages("radiant")
Once all packages are installed, select Start radiant
from the Addins
menu in Rstudio or use the command below to
launch the app:
::radiant() radiant
To launch Radiant in Rstudio’s viewer pane use the command below:
::radiant_viewer() radiant
To launch Radiant in an Rstudio Window use the command below:
::radiant_window() radiant
To easily update Radiant and the required packages, install the
radiant.update
package using:
options(repos = c(RSM = "https://radiant-rstats.github.io/minicran", CRAN = "https://cloud.r-project.org"))
install.packages("remotes")
::install_github("radiant-rstats/radiant.update", upgrade = "never") remotes
Then select Update radiant
from the Addins
menu in Rstudio or use the command below:
::radiant.update() radiant.update
See the installing radiant page additional for details.
Optional: You can also create a launcher on your
Desktop to start Radiant by typing radiant::launcher()
in
the R(studio) console and pressing return. A file called
radiant.bat
(windows) or radiant.command
(mac)
will be created that you can double-click to start Radiant in your
default browser. The launcher
command will also create a
file called update_radiant.bat
(windows) or
update_radiant.command
(mac) that you can double-click to
update Radiant to the latest release.
When Radiant starts you will see data on diamond prices. To close the
application click the
icon in the navigation bar and then click Stop
. The Radiant
process will stop and the browser window will close (Chrome) or
gray-out.
Documentation and tutorials are available at https://radiant-rstats.github.io/docs/ and in the Radiant web interface (the icons on each page and the icon in the navigation bar).
Individual Radiant packages also each have their own pkgdown sites:
Want some help getting started? Watch the tutorials on the documentation site.
Please use the GitHub issue tracker at github.com/radiant-rstats/radiant/issues if you have any problems using Radiant.
Not ready to install Radiant on your computer? Try it online at the link below:
https://vnijs.shinyapps.io/radiant
Do not upload sensitive data to this public server. The size of data upload has been restricted to 10MB for security reasons.
To run your own instance of Radiant on shinyapps.io first
install
Radiant and its dependencies. Then clone the
radiant
repo and ensure you have the latest version of the Radiant packages
installed by running radiant/inst/app/for.shinyapps.io.R
.
Finally, open radiant/inst/app/ui.R
and deploy the
application.
You can also host Radiant using shiny-server. First, install radiant on the server using the command below:
options(repos = c(RSM = "https://radiant-rstats.github.io/minicran", CRAN = "https://cloud.r-project.org"))
install.packages("radiant")
Then clone the
radiant
repo and point shiny-server to the inst/app/
directory. As
a courtesy, please let me know if you intend to use Radiant on a
server.
When running Radiant on a server, by default, file uploads are
limited to 10MB and R-code in Report > Rmd and Report
> R will not be evaluated for security reasons. If you have
sudo
access to the server and have appropriate security in
place you can change these settings by adding the following lines to
.Rprofile
for the shiny
user on the
server.
options(radiant.maxRequestSize = -1) ## no file size limit
options(radiant.report = TRUE)
To run radiant in the cloud you can use the customized Docker container. See https://github.com/radiant-rstats/docker for details
To save your analyses save the state of the app to a file by clicking
on the icon in the navbar and
then on Save radiant state file
(see also the Data >
Manage tab). You can open this state file at a later time or on
another computer to continue where you left off. You can also share the
file with others that may want to replicate your analyses. As an
example, load the state file radiant-example.state.rda
by clicking on the icon in the
navbar and then on Load radiant state file
. Go to Data
> View and Data > Visualize to see some of the
settings from the previous “state” of the app. There is also a report in
Report > Rmd that was created using the Radiant interface.
The html file
radiant-example.nb.html
contains the output.
A related feature in Radiant is that state is maintained if you
accidentally navigate to another web page, close (and reopen) the
browser, and/or hit refresh. Use Refresh
in the
menu in the navigation
bar to return to a clean/new state.
Loading and saving state also works with Rstudio. If you start
Radiant from Rstudio and use
> Stop
to stop the app, lists called r_data
, r_info
,
and r_state
will be put into Rstudio’s global workspace. If
you start radiant again using radiant::radiant()
it will
use these lists to restore state. Also, if you load a state file
directly into Rstudio it will be used when you start Radiant to recreate
a previous state.
Technical note: Loading state works as follows in
Radiant: When an input is initialized in a Shiny app you set a default
value in the call to, for example, numericInput. In Radiant, when a
state file has been loaded and an input is initialized it looks to see
if there is a value for an input of that name in a list called
r_state
. If there is, this value is used. The
r_state
list is created when saving state using
reactiveValuesToList(input)
. An example of a call to
numericInput
is given below where the
state_init
function from radiant.R
is used to
check if a value from r_state
can be used.
numericInput("sm_comp_value", "Comparison value:", state_init("sm_comp_value", 0))
The source code for the radiant application is available on GitHub at
https://github.com/radiant-rstats.
radiant.data
, offers tools to load, save, view, visualize,
summarize, combine, and transform data. radiant.design
builds on radiant.data
and adds tools for experimental
design, sampling, and sample size calculation.
radiant.basics
covers the basics of statistical analysis
(e.g., comparing means and proportions, cross-tabs, correlation, etc.)
and includes a probability calculator. radiant.model
covers
model estimation (e.g., logistic regression and neural networks), model
evaluation (e.g., gains chart, profit curve, confusion matrix, etc.),
and decision tools (e.g., decision analysis and simulation). Finally,
radiant.multivariate
includes tools to generate brand maps
and conduct cluster, factor, and conjoint analysis.
These tools are used in the Business Analytics, Quantitative Analysis, Research for Marketing Decisions, Applied Market Research, Consumer Behavior, Experiments in Firms, Pricing, Pricing Analytics, and Customer Analytics classes at the Rady School of Management (UCSD).
Radiant would not be possible without R and Shiny. I would like to thank Joe Cheng, Winston Chang, and Yihui Xie for answering questions, providing suggestions, and creating amazing tools for the R community. Other key components used in Radiant are ggplot2, dplyr, tidyr, magrittr, broom, shinyAce, shinyFiles, rmarkdown, and DT. For an overview of other packages that Radiant relies on please see the about page.
Radiant is licensed under the AGPLv3. As a summary, the AGPLv3 license requires, attribution, including copyright and license information in copies of the software, stating changes if the code is modified, and disclosure of all source code. Details are in the COPYING file.
The documentation, images, and videos for the
radiant.data
package are licensed under the creative
commons attribution and share-alike license
CC-BY-SA.
All other documentation and videos on this site, as well as the help
files for radiant.design
, radiant.basics
,
radiant.model
, and radiant.multivariate
, are
licensed under the creative commons attribution, non-commercial,
share-alike license
CC-NC-SA.
If you are interested in using any of the radiant packages please email me at radiant@rady.ucsd.edu