NewsAboutContact usCreate an AccountLoginGo To
Community supported
Works with
InterSystems IRIS
analytics ai ml
Last updated
4/22/19, 12:28 PM
Version history

What's new in this version

Change category

Use R language with InterSystems IRIS


R Gateway via RServe for InterSystems IRIS Data Platform. Author Shiao-Bin Soong: email, github profile.

ML Toolkit user group

ML Toolkit user group is a private GitHub repository set up as part of InterSystems corporate GitHub organization. It is addressed to the external users that are installing, learning or are already using ML Toolkit components. To join ML Toolkit user group, please send a short e-mail at the following address: and indicate in your e-mail the following details (needed for the group members to get to know and identify you during discussions):

  • GitHub username
  • Full Name (your first name followed by your last name in Latin script)
  • Organization (you are working for, or you study at, or your home office)
  • Position (your actual position in your organization, or “Student”, or “Independent”)
  • Country (you are based in)


  1. Install and start Rserve:
  • Install a recent version of R.
  • Install Rserve package from a R terminal: install.packages("Rserve",,"")
  • Launch Rserve from a R terminal:
  1. Load and Compile IRIS R package (i.e. do $system.OBJ.ImportDir("C:\InterSystems\Repos\R\","*.cls","c",,1)).

  2. The following ObjectScript code illustrates the simple integration with Rserve:

	R.RConnection c = ##class(R.RConnection).%New() // Create a R client
	Set x = ##class(R.REXPDouble).%New(3.0) // A single double value
	Do c.assign("x", x) // Assign the value to R variable x
	Do c.eval("y<-sqrt(x)") // Evaluate R script
	Set y = c.get("y") // Get the value of R variable y

It is advised to wrap all ObjectScript code in a try catch block. More test cases and usages can be found in class R.Test.

  1. A demo case is in R.Demo package.
  • Import data from csv file pima-diabetes.csv to class R.Demo.Pima.
  • Run Do ##class(R.Demo.Pima).LogReg(). This will use pima dataset to train and save a logistic regression model.
  • Run Do ##class(R.Demo.Pima).ScoreDataset(). This will score the pima dataset using the previously saved model and save the results to the table.
  1. Check test production for InterOperability examples.