Industry: Education, Research

JetBrains products used: MPS

Organization Size: 5,000-10,000

The Weill Cornell Clinical & Translational Science Center

MetaR, built with JetBrains MPS, was developed at the Weill Cornell Medicine Clinical & Translational Science Center to make data analysis easier for biomedical scientists with minimal computational skills.

“MetaR takes advantage of JetBrains MPS to make data analysis with the R language easier. MPS created brand new and unique possibilities for MetaR.”

— Manuele Simi, Senior Software Engineer, Weill Cornell Medicine

Problem

Data analysis tools have become essential to the study of biology. The tools available today have been constructed using layers of technology developed over decades. Biologists and clinicians are often called upon to perform basic or advanced data analysis, as their unique knowledge of the experiments that generate the data puts them in the ideal position to perform their own analysis. Yet statistical languages are not always easily accessible to them, and their limited computational experience is often an obstacle.

Solution

The R language is widely used for data analysis in biology. Expert biostatisticians and bioinformaticians have developed many R packages that implement advanced analyses for biological high-throughput data. However, it takes a long time to acquire the computational and statistical knowledge required to fully benefit from the flexibility that R provides.

MetaR applies Language Workbench Technology to create a set of data analysis languages tailored to biologists. These languages automatically generate the underlying R code in order to take advantage of the packages developed in this language. MetaR is an integrated environment that makes it possible for users to write their own analyses with minimal knowledge of the syntax of the constructs. The auto-completion features of the projectional editors, in addition to the composition of elements from different languages, offer a convenient way to set references between objects and help users avoid typos.

A key aspect of MetaR is the way it combines the user interface and scripting in a single platform. This feature makes it possible to analyze data more efficiently. Experts can design simplified data analysis languages that do not require any prior programming experience and behave like graphical user interfaces while still maintaining the advantages of scripting. MetaR also makes it possible to perform analyses in native or virtualized environments.

The MetaR Languages

Since working with high-throughput data often requires using tables of data as inputs, MetaR includes Table as a key element of the design. Tables are imported into the MetaR models and then analyzed with metar-statements inside Analysis elements.

MetaR-statements are declarative language constructs that remove the need for prior knowledge of the language syntax, which helps provide a smooth learning curve for beginners just starting out, who have no knowledge of programming.

Example of Table imported in MetaR:

Example of Analysis script:

The Analysis script above shows how to import a table (import metar-statement), elaborate (limma voom — a popular method in statistical analysis to compare sets of genes) and transform (join, subset rows) its data, and finally draw (heatmap) and visualize/save (multiplot, render) a plot of the results, which is a very common set of procedures in data analysis.

This script uses only a very small subset of the metar-statements distributed with MetaR. However, the tool is general and can be readily extended to support a broad range of data analyses and visualizations. New languages can easily create and add new metar-statements that seamlessly integrate with those that already exist inside Analysis elements.

Other Examples of Data Visualization

Target

MetaR can be used by:

  1. Biologists with no programming skills who want to analyze their data.
  2. Bioinformaticians who need to perform repetitive analyses and who find it beneficial to design and use specialized micro-languages to increase the efficiency and the consistency of their data analysis.
  3. R programmers who want to experiment with language composition and extension.
  4. Bioinformaticians who wish to package state-of-the-art analysis methods into user-friendly MetaR analysis language constructs. MetaR can act as a bridge that allows experts who develop analysis methods in R to distribute these methods to the broadest possible audience without having to invest a lot of effort into developing user interfaces.

Training Sessions

Training sessions are periodically offered to staff, students, postdocs, and investigators who hold an appointment in one of our Clinical & Translational Science Center institutions (Memorial Sloan-Kettering Cancer Center, the Hospital for Special Surgery, NewYork-Presbyterian Hospital, Hunter College, and Cornell University), but they often include participants from other institutions in NYC. We have found that beginners can complete the assignments in session in less than 2 hours with MetaR, while more traditional training in R and its packages would require several sessions (6–24 hours) and an extensive technical background.

Why MPS

MetaR takes advantage of JetBrains MPS to make data analysis with the R language easier. MPS created brand new and unique possibilities for MetaR:

  • The projectional editor’s interactive features, such as auto-completion, provide guidance to beginners and experts alike when using the language to develop analyses.
  • The ability to render nodes with a mix of text and graphical user interface components grants various levels of user experience.
  • Language composition makes it possible for experts to extend MetaR with their own constructs and integrate them easily with the other languages.
  • Run configurations allow MetaR to define and control how to execute analysis scripts in different environments and transparently install missing dependencies before the scripts are executed.
  • The capability to generate R language scripts (the gold standard when it comes to data analysis) makes it possible for MetaR to build upon R’s features and benefit from the vast array of packages (more than 10,000) available for R.

MetaR is distributed as a set of plugins for MPS.

References

Contacts

Manuele Simi, Senior Software Engineer, Weill Cornell Medicine

Twitter: @ManueleSimi

Similar Customer Stories

DTO

Diederik Dulfer, the Dutch Tax Office

JetBrains MPS gives us the power to create the comprehensible language of Dutch tax regulations. We use this language in MPS to specify and test our tax calculations and to generate source code for our target platforms.

RoadBotics

Matt Lucas, Head of Product, RoadBotics

We switched to WebStorm in part because a lot of the premium features come prepackaged, which let us get started quickly while reducing our dependence on additional third parties. Besides, having all of our software licenses in one place made it easier to manage access to our development tools.

Skillaz

Alexander Shtanov, Team Lead, Skillaz

We went with JetBrains because of its ecosystem of tools, whose many capabilities not only improve our productivity but help us work better in other ways, as well.

More customer stories