- Require Shiny 1.8.1. Adjustments related to icon-buttons were made to address a breaking change in Shiny 1.8.1
- Reverting changes that removed
`req(input$dataset)`

in different places

- Fix for change in vip package metric name for r2

- Added scaling factor for profit calculations in Model > Evaluate Classification
- Replace dplyr::all_equal with all.equal due deprecation warning
- Using “Radiant for R” in UI to differentiate from “Radiant for Python”
- Check if the value of mtry for random forest is less than 0 or larger than the number of variables in the model
- Addressed a package documentation issue due to a change in roxygen2

- Improvements to screenshot feature. Navigation bar is omitted and the image is adjusted to the length of the UI.
- Removed all references to
`aes_string`

which is being deprecated in ggplot - Replaced “size” argument, deprecated in ggplot2, with “linewidth”
- Added functionality to create pdp plots, prediction plots (pred_plot), and permutation importance plots (varimp) for most available models. Prediction plots are convenient to quickly check for possible interactions which would take longer to generate using PDP
- Added AUC and Adjusted Pseudo R-squared to model fit metrics for logistic regression

- Fix when parsing commands using strsplit on ‘;’
- Use
`dplyr::near`

to avoid issues with user-provided probabilities not summing to 1 due to machine tolerance

- gsub(“[80-]”, "", text) is no longer valid in R 4.2.0 and above. Non-asci symbols will now be escaped using stringi

- Added option to create screenshots of settings on a page. Approach is inspired by the snapper package by @yonicd
- Download decision analysis and decision tree plots generated using mermaid (DiagrammeR) to png format

- Fix for change in input format for XGBoost that broke cross-validation

- Fix for breaking change in as.vector for data.frames in the development version of R

- Fixed
`is_empty`

function clash with`rlang`

- Adjustments to work with the latest version of
`shiny`

and`bootstrap4`

- Fixed an issue where variables used in Decision Analysis with a one letter label caused problems evaluating the tree correctly
- Provide easier access to payoffs, probabilities, etc. from a solved Decisions Analysis tree

- Allow jitter in regression plots with scatter
- Log transformation of nnet::multinom estimates is no longer needed

- Remove missing values from
*tidy*model output

- Allow user to include or exclude variables from the coefficient plot in linear and logistic regression
- Fix for error on R-dev in
*Model > Collaborative filtering*(“Error in xtfrm.data.frame(x) : cannot xtfrm data frames”)

- Fix for issue introduced by version 0.7.0 of the broom package related to degrees of freedom in linear regression
- Fix for NoLD issue (XGBoost) identified by CRAN on Linux
- Fix for NoLD issue (XGBoost) identified by CRAN on Solaris

- Fix for
*Model > Decision analysis*. Indent levels could be affected when the input file contains blank lines - Improvement in calculating PDP for categorical variables in plot.gbt based on suggestion by @benmarchi (https://github.com/radiant-rstats/radiant.model/issues/4)

- Minor adjustments in anticipation of dplyr 1.0.0

- Fix for cv.rforest when the max of
`mtry`

exceeds the number of explanatory variables - Fix to write.coeff when one or more coefficients have a missing value
- Use weighted mean and sd in write.coeff function when needed
- Added flexibility in using constants while defining the spec for other randomly generated variables

- Adding
`OR%`

change as a columns in output for*Model > Logistic regression*and the`write.coeff`

function - Restrict max number of levels in a “groupable” variable used in
*Model > Evaluate classification*and*Model > Multinomial logistic regression*to no more than 50 - Avoid rounding the profit measures in
*Model > Evaluate classificiation*

- Improvements to cv.gbt to allow previously setup evaluation functions to be used in cross validation for hyper parameter tuning
- Random Forest module using the
`ranger`

package. Includes a`cv.rforest`

function for tuning using cross-validation - Gradient Boosted Trees module using the
`xgboost`

package. Includes a`cv.gbt`

function for tuning using cross-validation. For convenience, all data.frame-to-matrix-conversion is handled by radiant - Partial Dependence Plots for all trees-based estimation modules and for neural networks
`onehot`

function to make converting a data.frame with categorical variables to a matrix a bit easier

- Allow specification of multiple summary functions in
*Model > Simulate > Repeat* - Documentation updates to link to new video tutorials
- Use
`patchwork`

for grouping multiple plots together - Allow formula input for
`logistic`

and`regress`

functions - Adjust correlation plot for NB to accommodate changes in
*Basics > Correlation* - Fix for repeated simulation (
*Model > Simulate > Repeat*) where “Variables to re-simulate” and “Output variables” were not always updated correctly when the set of available variables changed

- Fix prediction issue when using I(x^2) in a stepwise estimation process and x is removed
- Fix issue finding .as_int and .as_num when use radiant through shiny server

- Option to drop the intercept for
*Model > Multinomial Logistic Regression* - Provide access to the variables in a dataset during simulation and repeated simulation.

- Various fixes related to stepwise estimation of Multinomial, Logistic, and Linear regression model (e.g., VIF calculation, models with only an intercept, perfect multicollinearity, etc.).

- Fix to ensure environment is not attached as an attribute to data frames generated in the
*Model > Simulate*tool

- Update action buttons that initiate calculations when one or more relevant inputs are changed. When, for example, a model should be re-estimated, a spinning “refresh” icon will be shown
- Add option to use a formula for the
`regress`

function - Improved description of standardization process used. Added link to Gelman 2008
- Added an influence plot that shows standardized residuals and cooks-distance

- Fix for
`nobs`

in*Model > Multinomial logistic regression*. - Fix for
`write.coeff`

for use with*Model > Multinomial logistic regression* - Fix for decision trees that reference sub-trees. Environment to evaluate the tree is now explicitly provided. This will now also work with (sub) trees loaded from .yaml files
- Decision analysis now allows basic formulas in all parts of the tree
- Added confusion matrix and misclassification error for
*Model > Multinomial Logistic regression (MNL)* - Fix for saving multiple residual series for MNL
- Added a module for Multinomial Logistic regression (MNL) in the
*Model > Estimate*menu - Fix for confusion matrix which couldn’t find find the selected dataset in the web-interface
- Documentation fixes and updates
- Improved checks for variables that show no variation
- Numerous small code changes to support enhanced auto-completion, tooltips, and annotations in shinyAce 0.4.1
- Automatically fix faulty spacing in user input in Model > Decision Analysis

- Keyboard shortcut (Enter) when defining variable in Model > Simulate
- Allow series of type ts and date in models and prediction
- Autocompletion for functions in Model > Simulate
- Require shinyAce 0.4.0

- Don’t use simulation variables when their type is not selected
- Provide auto-completion for variables and relevant functions in the Simulate > Functions input
- Keyboard shortcuts for add a defined variable (i.e., press enter after adding the last input value)

- Fix for variable definition in
*Model > Simulate*where names of discrete random variables were not properly ‘fixed’ - Fix for variable selection in
*Model > Decision analysis > Sensitivity*

- Allow any variable in the prediction dataset to be used to customize a prediction when using
*Predict > Data & Command* - Fix for
`write.coeff`

when interactions, quadratic, and/or cubic terms are included in a linear or logistic regression - Rescale predictions in
`cv.nn`

so RMSE and MAE are in the original scale even if the data were standardized for estimation - Rename
`scaledf`

to`scale_df`

for consistency - Fix for plot sizing and printing of missing values in collaborative filtering
- Fix for
`cv.nn`

when weights are used in estimation - Improve documentation for cross-validation of
`nn`

and`crtree`

models (i.e.,`cv.nn`

and`cv.crtree`

) - Fixes for breaking changes in dplyr 0.8.0
- Fix to download tables from
*Model > Evaluate classificiation* - Use an expandable
`shinyAce`

input for the formula and function inputs in*Model > Simulate* - Fixes for repeated simulation with grid-search
- Use
`test`

instead of`validation`

- Option to add user defined function to simulations. This dramatically increases the flexibility of the simulation tool
- Ensure variable and dataset names are valid for R (i.e., no spaces or symbols), “fixing” the input as needed
- Cross validation functions for decision trees (
`cv.crtree`

) and neural networks(`cv.nn`

) that can use various performance metrics for during evaluation e.g.,`auc`

or`profit`

- Option to add square and cube terms in
*Model > Linear regression*and*Model > Logistic regression*. - Option to pass additional arguments to
`shiny::runApp`

when starting radiant such as the port to use. For example, radiant.model::radiant.model(“https://github.com/radiant-rstats/docs/raw/gh-pages/examples/demo-dvd-rnd.state.rda”, port = 8080) - Avoid empty string showing up in auto-generated code for model prediction (i.e.,
`pred_data`

or`pred_cmd`

) - Fix for VIF based on
`car`

for`regress`

and`logistic`

- Load a state file on startup by providing a (relative) file path or a url. For example, radiant.model::radiant.model(“https://github.com/radiant-rstats/docs/raw/gh-pages/examples/demo-dvd-rnd.state.rda”)
- Don’t live-update the active tree input to make it easier to save edits to a new tree without adding edits to the existing tree (Model > Decision analysis)
- Fix for NA error when last line of a decision analysis input is a node without a payoff or probability
- Load input (CMD + O) and Save input (CMD + S) keyboard shortcuts for decision analysis

- Using
`shinyFiles`

to provide convenient access to data located on a server

- Fix for simulations that use a data set as part of the analysis
- Replace non-ASCII characters in example datasets
- Remove
`rstudioapi`

as a direct import - Revert from
`svg`

to`png`

for plots in`_Report > Rmd_ and _Report > R_.`

svg` scatter plots with many point get to big for practical use on servers that have to transfer images to a local browser - Removed dependency on
`methods`

package

- Various changes to the code to accommodate the use of
`shiny::makeReactiveBinding`

. The advantage is that the code generated for*Report > Rmd*and*Report > R*will no longer have to use`r_data`

to store and access data. This means that code generated and used in the Radiant browser interface will be directly usable without the browser interface as well. - Improved documentation and examples

- Fix for https://github.com/radiant-rstats/radiant/issues/53

- Show the interval used in prediction for
*Model > Regression*and*Model > logistic*(e.g., “prediction” or “confidence” for linear regression) - Auto complete in
*Model > Decision analysis*now provides hints based on the current tree input and any others defined in the app. It also provides suggestions for the basic element of the tree (e.g.,`type: decision`

,`type: chance`

,`payoff`

, etc.) - Updated user messages for
*Model > Decision analysis*when input has errors

- Default interval for predictions from a linear regression is now “confidence” rather than “prediction”
`Estimate model`

button indicates when the output has been invalidated and the model should be re-estimated- Combined
*Evaluate classification*Summary and Plot into Evaluate tab - Upload and download data using the Rstudio file browser. Allows using relative paths to files (e.g., data or images inside an Rstudio project)

- Require
`shinyAce`

0.3.0 in`radiant.data`

and`useSoftTabs`

for*Model > Decision Analysis*

- Add Poisson as an option for
*Model > Simulate*

- Fix for #43 where scatter plot was not shown for a dataset with less than 1,000 rows
- Fixed example for logistic regression prediction plot
- Fix for case weights when minimum response value is 0

- Allow character variables in estimation and prediction
- Depend on DiagrammeR 1.0.0

- Residual diagnostic plot for Neural Network regression
- Improved handling of case weights for logistic regression and neural networks

- Show number of observations used in training and validation in
*Model > Evaluate classification* - Use Elkan’s formula to adjust probabilities when using
`priors`

in`crtree`

(`rpart`

) - Added options to customize tree generated using
`crtree`

(based on`rpart`

) - Better control of tree plot size in
`plot.crtree`

- Cleanup of
`crtree`

code - Improved printing of NN weights
- Option to change font size in NN plots
- Keyboard shortcut: Press return when cursor is in textInput to store residuals or predictions

- Fix for tree labels when (negative) integers are used

- Cleanup of lists returned by
`evalbin`

and`confusion`

- Add intercept in coefficient tables that can be downloaded for linear and logistic regression or using
`write.coeff`

- Convert logicals to factors in
`crtree`

to avoid labels < 0.5 and >= 0.5 - Improved labeling of decision tree splits in
`crtree`

. The tooltip (aka hover-over) will contain all levels used, but the tree label may be truncated as needed

- Fix input reset when screen size or zoom level is changed

- Renamed
`ann`

to`nn`

. The`ann`

function is now deprecated

- Prediction confidence interval provided for logistic regression based on blog post by [Gavin Simpson] (https://www.fromthebottomoftheheap.net/2017/05/01/glm-prediction-intervals-i/)
- Argument added to
`logistic`

to specify if profiling or the Wald method should be used for confidence intervals. Profiling will be used by default for datasets with fewer than 5,000 rows

- Left align tooltip in DiagrammeR plots (i.e.,
*Model >Decision Analysis*and*Model > Classification and regression trees*) - Add information about levels in tree splits to tooltips (
*Model > Classification and regression trees*)

- Fix to ensure DiagrammeR plots are shown in Rmarkdown report generate in
*Report > Rmd*or*Report > R*

- Added option to generate normally distributed correlated data in Model > Simulate
- Added option to generate normally distributed simulated data with exact mean and standard deviation in Model > Simulate
- Long lines of code generated for
*Report > Rmd*will be wrapped to enhance readability

- Default names when saving Decision Analysis input and output are now based on tree name
- Allow browser zoom for tree plots in Model > Decision Analysis and Model > Classification and Regression Trees
- Enhanced keyboard shortcuts for estimation and reporting
- Applied
`styler`

to code

- Grid search specs ignored when
*Model > Simulate > Repeat*is set to`Simulate`

- The number of repetitions in Model > Simulate was NA when grid search was used
- Fix for large weights that may cause an integer overflow
- Minor fix for coefficient plot in
`plot.logistic`

- Fixed state setting for decision analysis sensitivity input
- Fixed for special characters (e.g., curly quote) in input for Model > Decision Analysis
- Check that costs are not assigned to terminal nodes in Decision Analysis Trees. Specifying a cost is only useful if it applies to multiple nodes in a branch. If the cost only applies to a terminal node adjust the payoff instead
- Ensure : are followed by a space in the YAML input to Model > Decision Analysis

- Upgraded dplyr dependency to 0.7.1
- Upgraded tidyr dependency to 0.7

- Fix in
`crs`

when a tibble is passed

- Added option to use robust standard errors in
*Linear regression*and*Logistic regression*. The`HC1`

covariance matrix is used to produce results consistent with Stata

- Moved coefficient formatting from summary.regress and summary.logistic to make result$coeff more easily accessible
- Added F-score to
*Model > Evaluate classification > Confusion*

- Fixed RSME typo
- Don’t calculate VIFs when stepwise regression selects only one explanatory variable

- Added Model > Naive Bayes based on e1071
- Added Model > Classification and regression trees based on rpart
- Added Model > Collaborative Filtering and example dataset (data/cf.rda)
- Various enhancements to evaluate (binary) classification models
- Added Garson plot and moved all plots to the ANN > Plot tab

- Improved plot sizing for Model > Decision Analysis
- Show progress indicators if variable acquisition takes some time
- Expanded coefficient csv file for linear and logistic regression
- Show dataset name in output if dataframe passed directly to analysis function
- As an alternative to using the Estimate button to run a model you can now also use CTRL-enter (CMD-enter on mac)
- Use ALT-enter as a keyboard short-cut to generate code and sent to
*Report > Rmd*or*Report > R* - Improved documentation on how to customize plots in
*Report > Rmd*or*Report > R*

- Multiple tooltips in sequence in Decision Analysis
- Decision Analysis plot size in PDF was too small
- Replace histogram by distribution in regression plots
- Fix bug in regex for overlapping labels in variables section of Model > Decision Analysis
- Fixes for model with only an intercept (e.g., after stepwise regression)
- Update Predict settings when dataset is changed
- Fix for predict when using center or standardize with a command to generate the predictions
- Show full confusion matrix even if some elements are missing
- Fix for warnings when creating profit and gains charts
- Product dropdown for Model > Collaborative filtering did not list all variables

- Use of *_each is deprecated