作业帮 > 综合 > 作业

matlab 一列矩阵中提取某个矩阵的表示?

来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/04/29 11:30:18
matlab 一列矩阵中提取某个矩阵的表示?
for 1:n
生成矩阵 Ai;
M = [M; Ai];
end

M = A1
A2
...
An
我想取出某个Ai 应该用什么语句呢?
直接A1就能取出A1了啊
再问: for i = 1:n
生成矩阵 A;
M = [M; A];
end

sorry.. 实际是这样的
再答: 每个A的行数又不相同
生成的过程又没有记录A的行数信息,这是无法在从的M中重新提取Ai的
建议在for循环中生成一个数组记录每个Ai的行数
如下:
for i = 1:n
生成矩阵 A;
sizeRecord(i)=size(A,1);
M = [M; A];
end
等到要取出Ai时
id_start = sum(sizeRecord(1:i-1))+1; %Ai首行在M中的行号
id_end = sum(sizeRecord(1:i)); %Ai末行在M中的行号
Ai= M( id_start:id_end, : )
再问: 非常感谢哈.. 最后再问个小问题..
每次循环中能不能直接得到'Ai'呢? 我就是不知道这个矩阵名‘Ai’应该怎么弄

不知道说清楚没 ...
再答: 这个不好弄, 要么用个大的cell array细胞数组把每个矩阵存起来
这样就没必要用M了
像这样
循环里让

Cell{i}=A
这样Cel{i}就是每次产生的矩阵