SciPy 稀疏矩阵

2024 年 8 月 29 日 | 阅读 2 分钟

稀疏矩阵允许数据结构存储大型稀疏矩阵,并提供执行复杂矩阵计算的功能。 简单来说,假设您有一个包含数百个元素的二维矩阵,其中只有少数元素包含非零值。 当使用排序方法对该矩阵进行排序时,我们会为零浪费大量空间。

稀疏数据结构允许我们仅存储非零值,并假设其余值为零。

SciPy 中的稀疏矩阵类型

有多种方法可以表示稀疏矩阵; SciPy 提供了其中七种。

  • 分块稀疏行矩阵 (BSR)
  • 坐标列表矩阵 (COO)
  • 压缩稀疏列矩阵 (CSC)
  • 压缩稀疏行矩阵 (CSR)
  • 具有对角线存储的稀疏矩阵 (DIA)
  • 基于键的字典稀疏矩阵 (DOK)
  • 基于行的链表稀疏矩阵 (LIL)

请看以下示例

输出

[[0. 1. 0. 0. 0.]
 [2. 0. 0. 0. 0.]
 [3. 0. 4. 0. 0.]
 [0. 0. 5. 0. 0.]
 [0. 0. 0. 6. 0.]]
The data is [1. 2. 3. 4. 5. 6.]
Cell which consits the non-zero values [0 1 2 4 5 6]

下一主题SciPy 空间