This post is by Shahrokh Mortazavi, Partner Director of Program Management in the Data Group at Microsoft.
I am delighted to announce that Visual Studio now speaks another language: R!
R is decidedly the most popular statistical/data analysis language in use today. R Tools for Visual Studio brings together the power of R and Visual Studio in a convenient and easy to use plug-in that’s free and Open Source. When combined with Visual Studio Community Edition, you get a multi-lingual IDE that is perpetually free (for small teams). Today we’re releasing this as a public preview for evaluation and testing by developers.
Here are the exciting features of this preview release:
- Editor – complete editing experience for R scripts and functions, including detachable/tabbed windows, syntax highlighting, and much more.
- IntelliSense – (aka auto-completion) available in both the editor and the Interactive R window.
- R Interactive Window – work with the R console directly from within Visual Studio.
- History window – view, search, select previous commands and send to the Interactive window.
- Variable Explorer – drill into your R data structures and examine their values.
- Plotting – see all of your R plots in a Visual Studio tool window.
- Debugging – breakpoints, stepping, watch windows, call stacks and more.
- R Markdown – R Markdown/knitr support with export to Word and HTML.
- Git – source code control via Git and GitHub.
- Extensions – over 6,000 Extensions covering a wide spectrum from Data to Languages to Productivity.
- Help – use ? and ?? to view R documentation within Visual Studio.
- A polyglot IDE – VS supports R, Python, C++, C#, Node.js, SQL, etc. projects simultaneously.
Other features requested by the R developer community, including a Package Manager GUI, Visual Studio Code (cross-plat), etc. will be part of one of our future updates.
Use CRAN R or Microsoft R
RTVS is an IDE and as such you can use it with any recent version of R such as 3.2.x. If you install the free Microsoft R Open, you automatically get some turbo options such as threading support on multi-processor machines, providing significant speedup for a variety of analytical functions, as well as package collections check-pointed to a particular date/version. Microsoft R Server provides Big Data support and additional advanced features that can be used with SQL Server.
RTVS will detect versions of R you have installed, and you can choose the one you wish to use from the Options menu.
Azure ML SDK
You can use our R SDK with RTVS to access your datasets and workspaces on Azure ML. Use the environment to create and test models locally and easily operationalize them on Azure at scale.
This SDK is not tied to RTVS, but can be used from any environment to publish models to Azure ML.
It’s Open Source
Our team has integrated three languages into Visual Studio thus far: Python Tools for Visual Studio, Node.js Tools for Visual Studio and now R Tools for Visual Studio. We continue the tradition of doing all our development in the open and encourage developers to contribute and collaborate. RTVS is released under an MIT license. If you are a developer, feel free to fork the source and send us a feature or bug fix. RTVS is also a good template if you want to integrate one of your own experimental languages into VS. The source code repo is available on GitHub.
If You Had a Magic Wand…
… what would you want from an ideal R IDE to make you as productive as possible? Better debugging? Static analysis? Mixed mode R/C++ debugging? Cross-platform support? Take this short survey and share your opinions with us – we are listening closely and will use your input to prioritize bug fixes and features:
- Take the R IDE Survey.
After our Microsoft R Open and Microsoft R Server announcements last year, we are excited to add another important element to our analytics offerings, namely a powerful R authoring environment. Stay tuned to this blog for exciting additions to RTVS in upcoming months – there’s never been a more exciting time to be a data scientist!
Please see RTVS Installation instructions on the documentation page.