是否有在 java 中创建 npy 文件的库?
我正在寻找一种在 java 中编写大型矩阵的方法,以便使用 python 代码读取。
npy 似乎是一个不错的选择,因为它不会在 python 端添加额外的依赖项,并且格式已记录在案。
我考虑过 hdf5 格式,但对本机库的依赖使部署更加困难。
是否有在 java 中创建 npy 文件的库?
我正在寻找一种在 java 中编写大型矩阵的方法,以便使用 python 代码读取。
npy 似乎是一个不错的选择,因为它不会在 python 端添加额外的依赖项,并且格式已记录在案。
我考虑过 hdf5 格式,但对本机库的依赖使部署更加困难。
我们不久前遇到了同样的问题,并在 Kotlin 中实现了 NPY 和NPZ格式作为npy
库的一部分。
当前版本 (0.2.0) 有许多限制。具体不支持
Java代码:
Path filePath = new File("my.npz").toPath();
int[] values = {1, 2, 3, 4, 5, 6};
int[] shape = {2, 3};
try (NpzFile.Writer writer = NpzFile.write(filePath, true)) {
writer.write("my-entry", values, shape);
}
Maven依赖:
<dependency>
<groupId>org.jetbrains.bio</groupId>
<artifactId>npy</artifactId>
<version>0.3.3</version>
</dependency>
我不认为有一个库可以做到这一点,但您可以查看规范,或者可能使用 matlab 格式作为中间体,似乎至少有一个 java 库:
http://www.mathworks.com/matlabcentral/fileexchange/10759-jmatio-matlabs-mat-file-io-in-java
我从来没有这样做过,但它可能对你有用,然后你可以通过以下方式阅读这些文件:
http://docs.scipy.org/doc/scipy/reference/generated/scipy.io.loadmat.html