Py-Tetrad and RPy-Tetrad: A New Python Interface with R Support for Tetrad Causal Search

Joseph Ramsey, Bryan Andrews
Proceedings of the 2023 Causal Analysis Workshop Series, PMLR 223:40-51, 2023.

Abstract

We give novel Python and R interfaces for the (Java) Tetrad project for causal modeling, search, and estimation. The Tetrad project is a mainstay in the literature, having been under consistent development for over 30 years. Some of its algorithms are now classics, like PC and FCI; others are recent developments. It is increasingly the case, however, that researchers need to access the underlying Java code from Python or R. Existing methods for doing this are inadequate. We provide new, up-to-date methods using the JPype Python-Java interface and the Reticulate Python-R interface, directly solving these issues. With the addition of some simple tools and the provision of working examples for both Python and R, using JPype and Reticulate to interface Python and R with Tetrad is straightforward and intuitive.

Cite this Paper


BibTeX
@InProceedings{pmlr-v223-ramsey23a, title = {Py-Tetrad and RPy-Tetrad: A New Python Interface with R Support for Tetrad Causal Search}, author = {Ramsey, Joseph and Andrews, Bryan}, booktitle = {Proceedings of the 2023 Causal Analysis Workshop Series}, pages = {40--51}, year = {2023}, editor = {Kummerfeld, Erich and Ma, Sisi and Rawls, Eric and Andrews, Bryan}, volume = {223}, series = {Proceedings of Machine Learning Research}, month = {14 Aug}, publisher = {PMLR}, pdf = {https://proceedings.mlr.press/v223/ramsey23a/ramsey23a.pdf}, url = {https://proceedings.mlr.press/v223/ramsey23a.html}, abstract = {We give novel Python and R interfaces for the (Java) Tetrad project for causal modeling, search, and estimation. The Tetrad project is a mainstay in the literature, having been under consistent development for over 30 years. Some of its algorithms are now classics, like PC and FCI; others are recent developments. It is increasingly the case, however, that researchers need to access the underlying Java code from Python or R. Existing methods for doing this are inadequate. We provide new, up-to-date methods using the JPype Python-Java interface and the Reticulate Python-R interface, directly solving these issues. With the addition of some simple tools and the provision of working examples for both Python and R, using JPype and Reticulate to interface Python and R with Tetrad is straightforward and intuitive.} }
Endnote
%0 Conference Paper %T Py-Tetrad and RPy-Tetrad: A New Python Interface with R Support for Tetrad Causal Search %A Joseph Ramsey %A Bryan Andrews %B Proceedings of the 2023 Causal Analysis Workshop Series %C Proceedings of Machine Learning Research %D 2023 %E Erich Kummerfeld %E Sisi Ma %E Eric Rawls %E Bryan Andrews %F pmlr-v223-ramsey23a %I PMLR %P 40--51 %U https://proceedings.mlr.press/v223/ramsey23a.html %V 223 %X We give novel Python and R interfaces for the (Java) Tetrad project for causal modeling, search, and estimation. The Tetrad project is a mainstay in the literature, having been under consistent development for over 30 years. Some of its algorithms are now classics, like PC and FCI; others are recent developments. It is increasingly the case, however, that researchers need to access the underlying Java code from Python or R. Existing methods for doing this are inadequate. We provide new, up-to-date methods using the JPype Python-Java interface and the Reticulate Python-R interface, directly solving these issues. With the addition of some simple tools and the provision of working examples for both Python and R, using JPype and Reticulate to interface Python and R with Tetrad is straightforward and intuitive.
APA
Ramsey, J. & Andrews, B.. (2023). Py-Tetrad and RPy-Tetrad: A New Python Interface with R Support for Tetrad Causal Search. Proceedings of the 2023 Causal Analysis Workshop Series, in Proceedings of Machine Learning Research 223:40-51 Available from https://proceedings.mlr.press/v223/ramsey23a.html.

Related Material