数学建模社区-数学中国
标题:
求教高手:怎么用一个循环,把两个矩阵不断地合并
[打印本页]
作者:
冬季的期盼
时间:
2013-8-9 11:35
标题:
求教高手:怎么用一个循环,把两个矩阵不断地合并
请教matbal高手:
有一个循环,每循环一次,把一个矩阵z,增加2列,增加的是矩阵g,要怎么做呢?
>> z=[]
z =
[]
>> z=[z(:),g(:,1),g(:,2)]
我试验了这个可以,但是再运行一次
z=[z(:),g(:,1),g(:,2)]
就报错了
可是,我测试z=[z(:),g(:)]又可以
但是把两个矩阵的元素都排成1列了,改变了z和g的行数,又不是我想要的,
要怎么写好呢?
相关运行结果:
>> z=[]
z =
[]
>> z=[z(:),g(:,1),g(:,2)]
z =
0 65
-1 59
-2 53
-1 64
1 64
-1 65
2 69
1 76
-4 53
2 72
3 75
3 73
1 65
-2 59
-1 59
-1 58
0 63
1 65
1 69
4 73
>> z=[z(:),g(:,1),g(:,2)]
Error using horzcat
CAT arguments dimensions are not consistent.
>> z=[z(:),g(:)]
z =
0 0
-1 -1
-2 -2
-1 -1
1 1
-1 -1
2 2
1 1
-4 -4
2 2
3 3
3 3
1 1
-2 -2
-1 -1
-1 -1
0 0
1 1
1 1
4 4
65 65
59 59
53 53
64 64
64 64
65 65
69 69
76 76
53 53
72 72
75 75
73 73
65 65
59 59
59 59
58 58
63 63
65 65
69 69
73 73
我实际 上想要的是4列,要怎么做呢
作者:
magic2728
时间:
2013-8-9 14:29
g=rand(10,2);
z=[];
for i=1:10%循环十次的话
z=[z,g];
end
这样就可以了,a(:)是a(:,:)的缩写,表示把矩阵的元素排成一列,故楼主加:是多余的,直接把矩阵用,拼在一起就好。
作者:
冬季的期盼
时间:
2013-8-9 14:59
magic2728 发表于 2013-8-9 14:29
g=rand(10,2);
z=[];
for i=1:10%循环十次的话
么么哒~~解决了!
作者:
magic2728
时间:
2013-8-9 17:12
谢谢支持!欢迎常来数学中国,祝您建模愉快!
欢迎光临 数学建模社区-数学中国 (http://www.madio.net/)
Powered by Discuz! X2.5