Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/311.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 利用压缩稀疏列(CSC)格式在Matlab中构造稀疏矩阵_Python_Matlab_Numpy_Matrix_Scipy - Fatal编程技术网

Python 利用压缩稀疏列(CSC)格式在Matlab中构造稀疏矩阵

Python 利用压缩稀疏列(CSC)格式在Matlab中构造稀疏矩阵,python,matlab,numpy,matrix,scipy,Python,Matlab,Numpy,Matrix,Scipy,我在Python中有一个大的稀疏矩阵(约50亿个非零值),存储格式为。我需要在Matlab中将其作为稀疏矩阵打开。显然无法保存这种大小的数据(似乎限制在~5GB),因此我将其保存为hdf5文件,详细说明如下。但是,在matlab中打开它时遇到问题 给定这三个向量:数据、索引、indptr,其含义是: 标准CSC表示法,其中列i的行索引 存储在索引[indptr[i]:indptr[i+1]]及其对应的 值存储在数据[indptr[i]:indptr[i+1]]中 如何在Matlab中构造此矩阵?

我在Python中有一个大的稀疏矩阵(约50亿个非零值),存储格式为。我需要在Matlab中将其作为稀疏矩阵打开。显然无法保存这种大小的数据(似乎限制在~5GB),因此我将其保存为hdf5文件,详细说明如下。但是,在matlab中打开它时遇到问题

给定这三个向量:
数据、索引、indptr
,其含义是:

标准CSC表示法,其中列i的行索引 存储在索引[indptr[i]:indptr[i+1]]及其对应的 值存储在数据[indptr[i]:indptr[i+1]]中


如何在Matlab中构造此矩阵?我可以用
h5read
在Matlab中打开这三个向量,没问题,但我不知道如何使用它们来构造稀疏矩阵。这不是我通常用来构造稀疏矩阵的
sparse
命令的格式。

作为权宜之计,我会尝试使用
coo
格式、数据、行、列(调整为0/1索引开始)进行传输。它不会那么紧凑,但可能更兼容。和
scipy
相比,
MATLAB
似乎隐藏了很多稀疏格式的细节。@hpaulj这是一个巨大的帮助,谢谢。