matlab 利用sparse产生 稀疏矩阵问题

本人将稀疏矩阵A通过sparse方法生成矩阵B。按理说B矩阵括号里面应该对应的是A矩阵中非零元素的行列标,但是为什么变换后矩阵B括号里的列标都为3呢?请高人指点!A:11... 本人将稀疏矩阵A 通过sparse方法生成 矩阵B 。按理说B矩阵括号里面应该对应的是 A矩阵中非零元素的行列标,但是为什么变换后矩阵 B括号里的列标都为3 呢?请高人指点!

A:
1 1 0 0 0 0 0 0 0 0 0 0 0 0
1 1 0 0 0 0 0 0 0 0 0 0 0 0
0 0 1 1 0 0 0 0 0 0 0 0 0 0
0 0 1 1 0 0 0 0 0 0 0 0 0 0
0 0 0 0 1 0 0 0 0 0 0 0 0 0
0 0 0 0 0 1 1 1 1 0 0 0 0 0
0 0 0 0 0 1 1 1 1 0 0 0 0 0
0 0 0 0 0 1 1 1 1 0 0 0 0 0
0 0 0 0 0 1 1 1 1 0 0 0 0 0
0 0 0 0 0 0 0 0 0 1 1 0 0 0
0 0 0 0 0 0 0 0 0 1 1 0 0 0
0 0 0 0 0 0 0 0 0 0 0 1 0 0
0 0 0 0 0 0 0 0 0 0 0 0 1 0
0 0 0 0 0 0 0 0 0 0 0 0 0 1

B:
(7244,3) 1
(7245,3) 1
(7246,3) 1
(7247,3) 1
(7248,3) 1
(7249,3) 1
(7250,3) 1
(7251,3) 1
(7252,3) 1
(7253,3) 1
(7254,3) 1
(7255,3) 1
(7256,3) 1
(7257,3) 1
展开
 我来答
guigui134567
2015-07-14 · TA获得超过100个赞
知道答主
回答量:65
采纳率:0%
帮助的人:118万
展开全部
首先你可以通过help sparse来查看MATLAB内置的帮助。它的讲解如下:
S = sparse(A)
将矩阵A转化为稀疏矩阵形式,即矩阵A中任何0元素被去除,非零元素及其下标组成矩阵S。如果A本身是稀疏的,sparse(S)返回S。
S = sparse(i,j,s,m,n,nzmax)
由向量i,j,s生成一个m*n的含有nzmax个非零元素的稀疏矩阵S,并且有 S(i(k),j(k)) = s(k)。向量 i,j 和 s 有相同的长度。对应对向量i和j的值,s 中任何零元素将被忽略。 s 中在 i 和 j 处的重复值将被叠加。 注意:如果i或j任意一个大于最大整数值范围,2^31-1, 稀疏矩阵不能被创建。
S = sparse(i,j,s,m,n)
用 nzmax = length(s)
S = sparse(i,j,s)
使m = max(i) 和 n = max(j),在s中零元素被移除前计算最大值,[i j s]中其中一行可能为[m n 0]。
S = sparse(m,n)
sparse([],[],[],m,n,0)的缩写,生成一个m*n的所有元素都是0的稀疏矩阵。
注意:稀疏矩阵适合0非常多的情况,否者效率会比较低。
具体使用时,选择合适的调用形式。
希望采纳,设置为满意答案,谢谢。
光点科技
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件... 点击进入详情页
本回答由光点科技提供
nextpilot
推荐于2016-04-09 · TA获得超过6654个赞
知道小有建树答主
回答量:1146
采纳率:100%
帮助的人:1882万
展开全部
估计是使用过程中出现什么错误,下面是转换的结果,你可以参考下

%by dynamic
%see also http://www.matlabsky.com
%contact me matlabsky@gmail.com
%2009.2.
%

>> a=ones(2);b=1;c=ones(4);
>> A=blkdiag(a,a,b,c,a,b,b,b)

A =

1 1 0 0 0 0 0 0 0 0 0 0 0 0
1 1 0 0 0 0 0 0 0 0 0 0 0 0
0 0 1 1 0 0 0 0 0 0 0 0 0 0
0 0 1 1 0 0 0 0 0 0 0 0 0 0
0 0 0 0 1 0 0 0 0 0 0 0 0 0
0 0 0 0 0 1 1 1 1 0 0 0 0 0
0 0 0 0 0 1 1 1 1 0 0 0 0 0
0 0 0 0 0 1 1 1 1 0 0 0 0 0
0 0 0 0 0 1 1 1 1 0 0 0 0 0
0 0 0 0 0 0 0 0 0 1 1 0 0 0
0 0 0 0 0 0 0 0 0 1 1 0 0 0
0 0 0 0 0 0 0 0 0 0 0 1 0 0
0 0 0 0 0 0 0 0 0 0 0 0 1 0
0 0 0 0 0 0 0 0 0 0 0 0 0 1

>> A2=sparse(A)

A2 =

(1,1) 1
(2,1) 1
(1,2) 1
(2,2) 1
(3,3) 1
(4,3) 1
(3,4) 1
(4,4) 1
(5,5) 1
(6,6) 1
(7,6) 1
(8,6) 1
(9,6) 1
(6,7) 1
(7,7) 1
(8,7) 1
(9,7) 1
(6,8) 1
(7,8) 1
(8,8) 1
(9,8) 1
(6,9) 1
(7,9) 1
(8,9) 1
(9,9) 1
(10,10) 1
(11,10) 1
(10,11) 1
(11,11) 1
(12,12) 1
(13,13) 1
(14,14) 1
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
天泽是2q
2015-07-30 · TA获得超过9104个赞
知道大有可为答主
回答量:2979
采纳率:87%
帮助的人:1872万
展开全部
具体问题是什么?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式