1

多くの StackOverflow の質問と Google の検索結果をカバーし、多くのディスカッション トピックを読みましたが、質問に対する適切な回答が見つかりませんでした。Java 環境で (行列ベクトル乗算のように) 読み取って操作する 36600 ノード (36600x36600 隣接行列) を含む .mat 形式の疎行列があります。ここで説明した多くの回答を適用しましたが、.mat ファイルにデータがあったにもかかわらず、常に NullPointerException エラーが発生しました。 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 ライブラリを使用することにしました。提案やアドバイスは私をとても助けてくれます。読んでくれてありがとう。

4

2 に答える 2

0

find行、列、およびゼロ以外の要素の値を取得し、これらをテキスト、csv または ... として保存するために使用します。

[row, col, v] = find(my_spares_matrix);
于 2016-09-06T04:43:46.290 に答える