R Tools for Visual Studio Sample Projects

This collection of samples will get you started on R, Microsoft R Server and R Tools for Visual Studio. To get them:

  1. Download this zip file.
  2. Unzip.
  3. Open examples/Examples.sln.

README files will help you navigate the samples.

At the top level, A First Look at R gives a gentle introduction for newcomers to R. MRS and Machine Learning gives examples of how to use R and Microsoft R Server for machine learning.

What’s special about Microsoft R Open and Microsoft R Server?

Microsoft R Open, Microsoft’s distribution of R, is different from CRAN R in two important ways:

  1. Better computation performance when used with the Intel Math Kernel Libraries. These are available as a free download from Microsoft for use with Microsoft R Open.

  2. Reproducible R Toolkit, which ensures that the libraries you used to build your R program are always available to others that want to reproduce your work.

Microsoft R Server is an extension of R that allows you to handle more data and handle it faster. It gives R two powerful capabilities:

  1. Larger data sets. MRS can process out-of-memory data from a variety of sources including Hadoop clusters, databases and data warehouses. You never have to be limited by your RAM again.

  2. Parallel, multi-core processing. MRS can efficiently distribute computation across all the computational resources it has available. On your personal workstation or a remote cluster, MRS will get an answer faster.

benchmark Figure 1. MRS and MRO with MKL have significantly better computation performance related to certain matrix calculation than R and MRO without MKL. Simulated data is used in this calculation. For a technical comparison of R with MRO and MRS, check out Lixun Zhang’s detailed discussion on the topic.

rxGlm benchmark Figure 2. This figure compares elapsed time in seconds used in building Logistic Regression models to predict whether the arrival of scheduled passenger flights will be delayed by more than 15 minutes. Elapsed time used in CRAN R increases dramatically when increasing a small number of rows, while MRS only increases by approximately 2 times. For details of this benchmark, check out rxGlm_benchmark.R example.

Samples highlights