我已经涵盖了很多 StackOverflow 问题和 Google 搜索结果,阅读了许多讨论主题,但我找不到任何适合我的问题的答案。我有一个 .mat 格式的稀疏矩阵,其中包含 36600 个节点(36600x36600 邻接矩阵),用于在 Java 环境中读取和操作(如矩阵向量乘法)。我应用了许多在此处讨论的答案,但我总是收到 NullPointerException 错误,尽管 .mat 文件中有数据。(有人说这些结果是因为数据的大小)我已将以下代码应用于返回的 .mat 文件null 和 NullPointerException。
MatFileReader matfilereader = new MatFileReader("sourceData.mat");
MLArray mlArrayRetrieved = matfilereader.getMLArray("data");
System.out.println(mlArrayRetrieved);
System.out.println(mlArrayRetrieved.contentToString());
此外,我曾多次尝试在 Jupyter Notebook 的 MATLAB 环境和 Python 环境中将 .mat 文件转换为 .csv 或 .xls,但这些时候我也没有得到任何结果。
该 .mat 文件将成为邻接矩阵,并将成为 Cytoscape 项目中特定算法的来源。因此,我必须在 Java 环境中使用它,并且我决定使用 COLT 库进行矩阵操作。建议和建议会对我有很大帮助。谢谢阅读。