发布网友 发布时间:2022-04-21 18:02
共5个回答
热心网友 时间:2023-10-04 02:54
MATLAB矩阵拼接的具体操作步骤如下:
1、定义两个矩阵,例如m = 1,2,3;2,3,4;3,4,5,;4,5,6;n =1,3,5;2,4,6;3,5,7;4,6,8。
2、横向拼接,只用输入k=[m,n]。
3、输入g=[m n],并进行横向拼接。
4、纵向拼接,我们输入f=[m;n]即可。
5、MATLAB定义矩阵拼接即可拼接。
热心网友 时间:2023-10-04 02:54
例如:
要想把a,b合并
使用命令:c = [a; b]
结果:
c =
1 2 3
2 3 4
4 5 6
5 9 9
如果想要横向合并:c = [a b]或c = [a, b]
结果:
c =
1 2 3 4 5 6
2 3 4 5 9 9
热心网友 时间:2023-10-04 02:55
没明白楼主还想要什么样的定义?
直接
C=[A;B]不就行了?如果想写成函数的形式,那也有现成的:
C=cat(1,A,B)追问若A,B大小不一致怎么办呢?比如A(3*3),B(3*2).
运行C=[A ;B]的话会报错如下
??? Error using ==> vertcat
CAT arguments dimensions are not consistent.
有没有办法让大小不足的地方自动补充“0”元素呢?
追答
矩阵拼接是要求维数匹配的,你举的例子不符合拼接的条件。如果按照你所说的自动补零,需要自己编写函数。
参考函数代码如下:
function C = vcat_padding_0s(A, B)调用实例:
>> A=magic(3)
热心网友 时间:2023-10-04 02:55
a =热心网友 时间:2023-10-04 02:56
可以自自己定义函数,需要时调用即可 很方便