Literature DB >> 33816951

Executing native Java code in R: an approach based on a local server.

Mathieu Fortin1.   

Abstract

The R language is widely used for data analysis. However, it does not allow for complex object-oriented implementation and it tends to be slower than other languages such as Java, C and C++. Consequently, it can be more computationally efficient to run native Java code in R. To do this, there exist at least two approaches. One is based on the Java Native Interface (JNI) and it has been successfully implemented in the rJava package. An alternative approach consists of running a local server in Java and linking it to an R environment through a socket connection. This alternative approach has been implemented in an R package called J4R. This article shows how this approach makes it possible to simplify the calls to Java methods and to integrate the R vectorization. The downside is a loss of performance. However, if the vectorization is used in conjunction with multithreading, this loss of performance can be compensated for.

Keywords:  Interoperability; Java Native Interface; Java local server; R vectorization; TCP/IP connection

Year:  2020        PMID: 33816951      PMCID: PMC7924457          DOI: 10.7717/peerj-cs.300

Source DB:  PubMed          Journal:  PeerJ Comput Sci        ISSN: 2376-5992


  1 in total

1.  A comparison of three programming languages for a full-fledged next-generation sequencing tool.

Authors:  Pascal Costanza; Charlotte Herzeel; Wilfried Verachtert
Journal:  BMC Bioinformatics       Date:  2019-06-03       Impact factor: 3.169

  1 in total

北京卡尤迪生物科技股份有限公司 © 2022-2023.