admin 管理员组

文章数量: 1086019


2024年4月21日发(作者:python有效变量名)

Matlab一维数组合并

题目:

数组work1[x1,x2——,xn],work2[y1,y2——,yn],现在要生成一个数组

work3,

work3中的数据为[x1,x2,x3--xn,y1,y2--yn];

合并方法:

直接将两个矩阵合并:

A = [1,2,3,4];

B = [-1,-2,-3,-4];

C = zeros(1,size(B,2)+size(A,2)); %这句可以不要;

C = [A, B];

2、一维数组交叉合并:

题目:

数组work1[x1,x2——,xn],work2[y1,y2——,yn],现在要生成一个数组

work3,

work3中的数据为[x1,y1,x2,y2——,xn,yn];

合并方法一:

A = [1,2,3,4];

B = [-1,-2,-3,-4];

C = zeros(1,size(B,2)+size(A,2));

C(1:2:end) = A;

C(2:2:end) = B

C =

1 -1 2 -2 3

解法二:

4 -4 -3

A = [1,2,3,4];

B = [-1,-2,-3,-4];

C=[A' B']';

C=reshape(C, 1, length(A)+length(B));

C =

1 -1 2 -2 3 -3 4

解法三:

对于解法二改进:

c=reshape([A;B],1,[]);

这里要注意,只能在v7以上的版本才能使用此法;

解法四:

A = [1,2,3,4];

-4

B = [-1,-2,-3,-4];

C=kron(A,[1 0])+kron(B,[0 1]);

C =

1 -1 2 -2 3

很多技巧,试总结以上的方案:

-------------------------------------

A = [1,2,3,4];

B = [-1,-2,-3,-4];

----------------- 1 -----------------

C = zeros(1,size(B,2)+size(A,2));

C(1:2:end) = A;

C(2:2:end) = B;

4 -4 -3

C=C(:);

------------------2 -----------------

C=[A' B']';

C=reshape(C, 1, length(A)+length(B));

------------------3-------------------

c=reshape([A;B],1,[])

------------------4-------------------

C=kron(A,[1 0])+kron(B,[0 1]);

--------------------------------------


本文标签: 合并 数组 总结 版本 变量名