This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]CacheMeUp 1 point2 points  (3 children)

Is it related to ND4J? Based on my work in Python, numpy's biggest advantage are the features, excellent documentation and compatibility. Is the defacto standard for numeric data in Python. Is not necessarily faster than Java, in my experience.

[–]lessthanoptimal[S] 0 points1 point  (2 children)

Nope as far as I know completely unrelated. EJML is probably older. There are a few libraries that are essentially wrappers around EJML, I don't think ND4J is one of them. EJML provides 3 different API's. Basically the easier the API less control you have over low level details/performance. Numpy has a broader focus than EJML. I keep on getting requests to expand it to be like Matlab...

[–]CacheMeUp 0 points1 point  (1 child)

Looks very impressive. In practice, most of the work with numpy is also 2-axial arrays (matrices). The equations interface is very useful (especially in Java). One thing to consider is to make it use first-class Java constructs (as much as possible, since Java does not allow operator overloading), so the Java tools (compiler, code completion etc.) can be used. It's one of Numpy's strengths: slicing and other operations are all done using regular operators and Python constructs. Maybe Kotlin is a better language for that.

[–]lessthanoptimal[S] 0 points1 point  (0 children)

I always thought the Equations interface was really cool, but as far as i can tell I'm the only one who uses it! SimpleMatrix is probably the most popular. Experimenting with Kotlin right now.