Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There are a lot of data science libraries written in Python and appears to be a lot of interest in working from Java (or Scala). I recently found libpython-clj, which is an actively maintained interop between Clojure and Python. It is designed more like a foreign function interface than Jython (which does not support Python 3 and seems dead). By invoking Clojure from Java, this demo demonstrates importing numpy into Java via Clojure's interop with Java as well as how to invoke a custom Clojure script within a Java project (which is an easier place to work with libpython-clj). For now, you need a system install of all Python libraries you are going to work with, but it may be possible to reference specific and isolated Python installations for more contained deployments.