gpt4 book ai didi

java - Java中读取和处理.mat文件(邻接矩阵)

转载 作者:太空宇宙 更新时间:2023-11-04 12:16:34 29 4
gpt4 key购买 nike

我已经讨论了很多 StackOverflow 问题和 Google 搜索结果,阅读了很多讨论主题,但我找不到我的问题的任何正确答案。我有一个 .mat 格式的稀疏矩阵,其中包含 36600 个节点(36600x36600 邻接矩阵),可以在 Java 环境中读取和操作(如矩阵 vector 乘法)。我应用了此处讨论的许多答案,但尽管 .mat 文件中有数据,但我总是遇到 NullPointerException 错误。(有人说这些结果是由于数据大小所致)我已将以下代码应用到返回 null 和 NullPointerException 的 .mat 文件。

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 库进行矩阵操作。意见和建议将对我有很大帮助。谢谢阅读。

最佳答案

只需使用find 获取非零元素的行、列和值并将它们保存为文本、csv 或...:

[row, col, v] = find(my_spares_matrix);

关于java - Java中读取和处理.mat文件(邻接矩阵),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39338671/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com