如何直接将scipy稀疏矩阵写入gzip压缩的Matrix Market格式文件?
直接写入gzip压缩的Matrix Market格式文件
可以通过Python内置的gzip模块创建压缩文件对象,再传递给scipy.io.mmwrite实现直接写入,无需生成中间未压缩文件。具体实现如下:
代码示例
import gzip from scipy.sparse import coo_matrix from scipy.io import mmwrite # 假设你的稀疏矩阵m和输出路径p已定义 # m = coo_matrix(...) # p = "~/matrix.mtx.gz" with gzip.open(p, 'wb') as f: mmwrite(f, m, field='real', precision=6)
关键说明
gzip.open(p, 'wb')以二进制写入模式打开gzip压缩文件,返回的文件对象可直接被mmwrite调用mmwrite支持接收文件类对象(只要实现了write方法)作为输出目标,无需先写入未压缩的.mtx文件- 可根据矩阵数据类型和精度需求,调整
field和precision参数
内容的提问来源于stack exchange,提问作者yippingAppa
相关产品推荐
相关产品推荐

