MATLAB 帮助中心
本页翻译不是最新的。点击此处可查看最新英文版本。
从稀疏矩阵外部格式导入
S = spconvert(D)
S = spconvert(D) 根据 D 的列,按与 sparse 函数类似的方式构造稀疏矩阵 S。
D
sparse
S
如果 D 的大小为 N×3,则 spconvert 将使用 D 的列 [i,j,re] 构造 S,以使 S(i(k), j(k)) = re(k)。
N
3
spconvert
[i,j,re]
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)。
4
[i,j,re,im]
S(i(k), j(k)) = re(k) + 1i*im(k)
示例
全部折叠
创建一个包含下列值的 ASCII 文件 uphill.dat。将文件保存到您的当前目录下。
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
single
double
全部展开
backgroundPool
ThreadPool
此函数完全支持基于线程的环境。有关详细信息,请参阅在基于线程的环境中运行 MATLAB 函数。
spconvert 函数完全支持 GPU 数组。要在 GPU 上运行该函数,请将输入数据指定为 gpuArray (Parallel Computing Toolbox)。有关详细信息,请参阅在 GPU 上运行 MATLAB 函数 (Parallel Computing Toolbox)。
gpuArray
此函数完全支持分布式数组。有关详细信息,请参阅使用分布式数组运行 MATLAB 函数 (Parallel Computing Toolbox)。
在 R2006a 之前推出
sparse | full
full
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
欧洲
亚太
联系您当地的办事处