The OP is from 2011. So as of end of 2015 I would like mention that there is a new kid in town which claims to be numpy for java -> nd4j]. The nice thing is that nd4j is an abstraction layer on top of different libraries like blas. Depending on the size of your matrices there are underlying implementations twice as fast as numpy or jblas. And your code is real platform independent.
Answer from KIC on Stack OverflowThe OP is from 2011. So as of end of 2015 I would like mention that there is a new kid in town which claims to be numpy for java -> nd4j]. The nice thing is that nd4j is an abstraction layer on top of different libraries like blas. Depending on the size of your matrices there are underlying implementations twice as fast as numpy or jblas. And your code is real platform independent.
The library Vectorz (https://github.com/mikera/vectorz) offers a fully featured NDArray that is broadly equivalent in functionality to Numpy's NDArray, i.e. it offers the fullowing features:
- Arbitrary N-dimensional arrays of numeric values (in this case, Java doubles)
- Lightweight views using strided access for efficient slicing
- A broad range of mathematical operations with effiecient implementations
It's also very fast: it is much faster then NumPy for most operations, although NumPy may still be faster for certain large matrix operations because it uses the native BLAS libraries to accelerate these.
Here's the NDArray class itself:
https://github.com/mikera/vectorz/blob/develop/src/main/java/mikera/arrayz/NDArray.java
Disclaimer: I'm the author of Vectorz
math - Java equivalent to NumPy - Software Recommendations Stack Exchange
NumPy equivalent for Java?
python - Is there any Java equivalent of NumPy? - Stack Overflow
What is comparable to Python Pandas and Numpy in Java?
https://github.com/cardillo/joinery
More on reddit.comThe nd4j.org API tries to mimic the semantics of Numpy, Matlab and scikit-learn. deeplearning4j.org is based on nd4j.
NM Dev is a Java numerical library (commercial, community and academical licenses ).
The open source of it is available at: https://github.com/nmdev2020/SuanShu
Is the a NumPy equivalent for Java?
I'm looking to build an application which connects to a SQL Server database, manipulates data pulled from it, reads an excel file, manipulates data inside it and writes a CSV file (to be read by some other application).
I've created a program that does exactly this in Python using pandas and numpy.
What are comparable Java packages/modules?
Side note: I know very little Java and figure this could be a good first project for me.
Basically I am looking for equivalent of Python’s NumPy, SciPy, pandas, scikit-learn and Keras.
JSAT is totally the indisputably best ML library for Java. I'm not 1000% biased because I wrote it or anything.
Some are not Java but run-on the JVM
https://spark.apache.org/
https://software.intel.com/en-us/intel-daal
http://mxnet.incubator.apache.org/
https://mahout.apache.org/
https://flink.apache.org/
http://ranksys.org/
https://deeplearning4j.org/
https://www.h2o.ai/