R Lanugage Feature: Programming Language Features

* Requires Revolution R Enterprise
** Requires Revolution R Enterprise for IBM Netezza
*** Requires additional open-source community packages from CRAN  

Input / Output

  • Files
    • text files (r/w)
    • .csv files (r/w)
    • binary files (r/w)
    • SAS .sas7bdat files (r) *
    • SPSS .sav files (r)*
    • URLs (r)
    • XML (r/w)
  • Database Connectivity
    • Hadoop*
    • MySQL
    • IBM Netezza**
    • ODBC
    • ODBC for big data*
    • Oracle
    • PostgresSQL
    • SQLite
    • Teradata

Object-oriented programming

  • Object oriented structures
    • S3, S4 and S5 classes
  • Functions
    • user defined functions
    • closures
    • environments
    • recursive functions
  • Control structures
    • conditional execution: if
    • conditional execution with alternative: if else
    • looping: for, while, repeat
  • Data structures
    • Arrays
    • Vectors
    • Matrices
    • Lists
    • Data Frames
  • Data Types
    • numeric
    • character
    • factors
    • logical
    • missing values
  • String handling
    • subsetting
    • splitting
    • concatenating
    • merging
    • character searching
    • regular expressions
  • Basic arithmetic
    • addition, subtraction, multiplication and division
    • powers
    • matrix multiplication
    • modulo arithmetic
  • Logical and Relational operators
    • Equal to / not equal to
    • <, >, <=, >=
    • is missing
    • logical AND, OR and NOT
  • Integration with other environments
    • C
    • JAVA
    • Perl
    • Python
    • Web services *
  • Parallel programming
    • apply functions to columns of an array
    • foreach iteration
    • iterators
    • High Performance Computing
    • parallel backends
      • Network Spaces
      • SMP
      • Snow

Distributed Computing

  • Amazon EC2 compatibility
  • Microsoft HPC Cluster compatibility *
  • Linux LSF Cluster compatibility *

Included R Packages

  • Base Packages
    • base - Base R functions (and datasets before R 2.0.0).
    • compiler - R byte code compiler (added in R 2.13.0).
    • datasets - Base R datasets (added in R 2.0.0).
    • grDevices - Graphics devices for base and grid graphics (added in R 2.0.0).
    • graphics - R functions for base graphics.
    • grid - A rewrite of the graphics layout capabilities, plus some support for interaction.
    • methods - Formally defined methods and classes for R objects, plus other programming tools, as described in the Green Book.
    • parallel -Support for parallel computation, including by forking and by sockets, and random-number generation (added in R 2.14.0).
    • splines -Regression spline functions and classes.
    • stats - R statistical functions.
    • stats4 - Statistical functions using S4 classes.
    • tcltk - Interface and language bindings to Tcl/Tk GUI elements.
    • tools - Tools for package development and administration.
    • utils- R utility functions.
  • Recommended Packages
    • KernSmooth - Functions for kernel smoothing (and density estimation) corresponding to the book “Kernel Smoothing” by M. P. Wand and M. C. Jones, 1995.
    • MASS - Functions and datasets from the main package of Venables and Ripley, “Modern Applied Statistics with S”. (Contained in the VR bundle for R versions prior to 2.10.0.)
    • Matrix - A Matrix package. (Recommended for R 2.9.0 or later.)
    • boot - Functions and datasets for bootstrapping from the book “Bootstrap Methods and Their Applications” by A. C. Davison and D. V. Hinkley, 1997, Cambridge University Press.
    • class - Functions for classification (k-nearest neighbor and LVQ). (Contained in the VR bundle for R versions prior to 2.10.0.)
    • cluster - Functions for cluster analysis.
    • codetools - Code analysis tools. (Recommended for R 2.5.0 or later.)
    • foreign - Functions for reading and writing data stored by statistical software like Minitab, S, SAS, SPSS, Stata, Systat, etc.
    • lattice - Lattice graphics, an implementation of Trellis Graphics functions.
    • mgcv - Routines for GAMs and other generalized ridge regression problems with multiple smoothing parameter selection by GCV or UBRE.
    • nlme - Fit and compare Gaussian linear and nonlinear mixed-effects models.
    • nnet - Software for single hidden layer perceptrons (“feed-forward neural networks”), and for multinomial log-linear models. (Contained in the VR bundle for R versions prior to 2.10.0.)
    • rpart - Recursive PARTitioning and regression trees.
    • spatial - Functions for kriging and point pattern analysis from “Modern Applied Statistics with S” by W. Venables and B. Ripley. (Contained in the VR bundle for R versions prior to 2.10.0.)
    • survival - Functions for survival analysis, including penalized likelihood.
  • Additional Packages included with Revolution R Enterprise
    • Revolution Packages
      • bootNWS - a parallel version of the boot function from the boot package
      • doMC (Linux only) - a parallel backend for foreach / %dopar%
      • doParallel - a parallel backend for foreach / %dopar% to be used with the parallel package
      • doNWS - a parallel backend for foreach / %dopar%
      • doRSR enables rxExec to use multiple cores on a local machine
      • doSMP - a parallel backend for foreach / %dopar%
      • doSNOW - a parallel backend for foreach / %dopar%
      • foreach - parallel for loops using the %dopar% operator
      • iterators - tools for iterating over R data structures
      • nws - implements the NetWorkSpaces parallel computing environment
      • nwsserver - contains Python code to implement the NWS server
      • pkgXMLBuilder (Windows only) - tools for RPE development
      • randomShrubberyNWS - parallel version of randomForest
      • Revobase - system utilities
      • RevobaseEnt - system utilities
      • revoIPC - system utilities
      • revoIpe (Windows only) - system utilities
      • RevoMods - system utilities
      • RevoScaleR - contains external memory implementations of statistical functions as well as functions for creating, reading and manipulating .XDF files
      • sprngNWS
    • Third Party Packages
      • multicore (Linux only) functions for running parallel algorithms on multi-core Linux machines
      • randomForest - random forest algorithms
      • snow - functions for parallel computing on multi-core Windows computers and clusters
      • RUnit - R functions implementing a standard unit test framework
      • XML (Windows only) - functions for reading and creating XML documents