Main Content

spconvert

从稀疏矩阵外部格式导入

说明

S = spconvert(D) 根据 D 的列,按与 sparse 函数类似的方式构造稀疏矩阵 S

  • 如果 D 的大小为 N×3,则 spconvert 将使用 D 的列 [i,j,re] 构造 S,以使 S(i(k), j(k)) = re(k)

  • 如果 D 的大小为 N×4,则 spconvert 将使用 D 的列 [i,j,re,im] 构造 S,以使 S(i(k), j(k)) = re(k) + 1i*im(k)

示例

示例

全部折叠

创建一个包含下列值的 ASCII 文件 uphill.dat。将文件保存到您的当前目录下。

1    1    1.000000000000000
1    2    0.500000000000000
2    2    0.333333333333333
1    3    0.333333333333333
2    3    0.250000000000000
3    3    0.200000000000000
1    4    0.250000000000000
2    4    0.200000000000000
3    4    0.166666666666667
4    4    0.142857142857143
4    4    0.000000000000000

有时,会特意在文件的最后一行包含预期大小的零值矩阵,这种做法很常见。它可以确保转换后的稀疏矩阵具有该预期大小。

将数据加载到 MATLAB® 中并将其转换为稀疏矩阵。

load uphill.dat
H = spconvert(uphill)
H =

  4×4 sparse double matrix (10 nonzeros)

   (1,1)       1.0000
   (1,2)       0.5000
   (2,2)       0.3333
   (1,3)       0.3333
   (2,3)       0.2500
   (3,3)       0.2000
   (1,4)       0.2500
   (2,4)       0.2000
   (3,4)       0.1667
   (4,4)       0.1429

本例中,不需要文件的最后一行,这是因为前面的行已指定该矩阵至少为 4×4。

输入参数

全部折叠

输入矩阵,指定为带有三列或四列的矩阵。无论是三列矩阵还是四列矩阵,D 的前两列均为下标,第三列由数据值组成。而四列矩阵会在第三列和第四列分别指定复数的实部和虚部。

如果 D 已是稀疏矩阵,则 spconvert 会返回 D

数据类型: single | double

扩展功能

版本历史记录

在 R2006a 之前推出

另请参阅

|