Jython的Numpy模拟

时间:2013-09-16 15:46:57

标签: python numpy matrix jython slice

我正在考虑将科学代码从Python移植到Jython,我感兴趣的是,是否存在数学库 对于Jython,它们是:

  1. 免费用于商业用途
  2. 为Jython设计了方便的矩阵语法 - 即允许切片,二进制和整数索引,+ - * / matlab和numpy等操作。
  3. 机器学习和统计路线的额外可用性将是一个优势(或者可以轻松地将数据转换为某些通用数据格式,主要Java机器学习库可以理解这些格式)。

    提前感谢您提供有关此类库的任何信息。

1 个答案:

答案 0 :(得分:5)

我承担了维持这样一个包的角色。它被称为jnumeric(可在github上获得,可通过maven安装)。

JNumeric有一种奇怪的历史,可以追溯到21世纪初。它从来没有真正在功能上等同于NumPy(甚至是数字,它实际上是试图模仿它),虽然它对我们使用它的“足够好”,但是它用作主要的数字计算器。 Java程序可能不是一个好主意。我们在Python中从头开始重写我们的应用程序是一个很糟糕的想法,因此我们可以使用NumPy而不是尝试在Java中进行矢量数学。出于这个原因,jnumeric很难维护,并且应该默默地淡化为不存在。

我最近注意到Github上出现了一个新项目,Numpy4J,可能会有更光明的未来。

虽然我知道它并没有完全解决你的问题,但我很好奇你为什么要转向Jython获取科学代码。 Java没有Python拥有的很好的数字运算和绘图库。像Weka这样的ML库在scikit-learn中有Python等价物。像ImageJ这样的成像材料在scikit-image中具有相同的效果。统计包存在于pandas和statsmodels中。 Python不会划伤你的科学痒是什么?

如果你想转移到Jython以便与一个无法轻松移植到Python的现有Java库接口,我会考虑JPype而不是Jython。