【发布时间】:2018-12-27 10:30:21
【问题描述】:
我有一个 numpy 的 .npz 格式的稀疏矩阵。我知道要阅读这个矩阵,我需要使用scipy.sparse.load_npz(),但想了解它的内部结构。
我在 .npz 文件的预览中看到它包含以下 5 个部分:
- 数据
- 格式
- 指数
- indptr
- 形状
如何更好地理解这种文件格式?
【问题讨论】:
-
您对
scipy.sparse包的熟悉程度如何?save_npz写入稀疏矩阵的基本属性,足以用load_npz重新创建它。它写入的内容取决于稀疏的format。在这种情况下,它是csr或csc矩阵。您可以使用np.load查看这 5 个值,但使用load_npz不需要这样做。如果您了解稀疏格式,npz部分非常明显。 -
如果您告诉我们更多关于您为什么想知道这一点的信息,这可能会有所帮助。只是好奇,还是打算直接使用零件?
-
@hpaulj 我使用了 scipy.sparse.load_npz 并将结果放入变量中。我希望将此矩阵用于 SVD,但此矩阵有部分数据(即向量),我不知道我的矩阵(加载后)是否是我需要使用的最终矩阵(tf_idf)或其他格式。我需要 TF-IDF 进行聚类。我用了一点 scipy。
-
loadnpz的结果将是sparsematrix,如docs.scipy.org/doc/scipy/reference/generated/… 所述。如果tf_idf接受 scipy 稀疏矩阵,则您不需要任何进一步处理,但我没有使用过该应用程序。 -
因为我需要稀疏矩阵,但我不明白为什么属性太多,我担心这是错误的方式。格式是 csc 我忘了说你。我经常使用数据集,之后我将在稀疏矩阵中进行转换