大型稀疏矩阵及其元数据的理想结构(或可能性)

时间:2015-08-29 22:26:04

标签: python metadata dataframe sparse-matrix

我正在使用大约260k行,3M列和26M非零值的稀疏矩阵(以Matrix Market格式存储)。我还有JSON文件,用于描述每行和每列的元数据。我需要在这个矩阵上执行矩阵运算,即矩阵乘积,尽管其他运算最需要。我一直在使用我的矩阵和我的字典(来自JSON),每个字典将row / col索引链接到其元数据值。它虽然有效但并不理想。

我确实想知道,那里有更好的选择吗?我知道Pandas / Dato数据帧,但在我看来,矩阵部分(及其操作)以某种方式降级。我一直在关注一些火焰项目(Dask,Xray,主要是这些核心外的技术)。我想知道处理这种情况的标准方式(或最合适的方式)是什么。

非常感谢任何见解。感谢。

1 个答案:

答案 0 :(得分:1)

最新版本的pandas包含“sparse”数据结构,包括DataFrameSeriesPanel,可以在上进行压缩任何常用值,包括NaN,而不仅仅是0. numpyoptionally幕后支持Pandas scipyscipy.sparse用于直接使用数学稀疏(主要是0填充)矩阵的模块。 “稀疏”Pandas对象也有experimental API转换为scipy.sparse个对象。