matlab 一维数组拼接,多个一维数组合并成一个一维数组
•
编程语言
目录
matlab 一维数组拼接,多个一维数组合并成一个一维数组
1、一维数组直接合并
直接将两个矩阵合并:
2、一维数组交叉合并:
方法一:
方法二:
方法三:
方法四:
其他操作:
matlab 一维数组拼接,多个一维数组合并成一个一维数组
1、一维数组直接合并
题目:
数组 work1[x1,x2,……,xn],work2[y1,y2,……,yn],现在要生成一个数组 work3,work3 中的数据为[x1,x2,x3,……,xn,y1,y2,……,yn];
合并方法:
直接将两个矩阵合并:
clc, clear, close all A = [1,2,3,4]; B = [-1,-2,-3,-4]; C = [5,6,7,8]; D = [-5,-6,-7,-8]; % 1、一维数组直接合并: % E = zeros(1,size(B,2)+size(A,2)); % 这句可以不要; E = [A, B]%; % 两数组合并,逗号:左右合并 F = [A; B]%; % 两数组合并,分号:上下合并
合并结果:
E =
1 2 3 4 -1 -2 -3 -4
F =
1 2 3 4
-1 -2 -3 -4
2、一维数组交叉合并:
题目:
数组 work1[x1,x2,……,xn],work2[y1,y2,……,yn],现在要生成一个数组 work3,work3 中的数据为 [x1,y1,x2,y2,……,xn,yn];
方法一:
% 2、一维数组交叉合并: % method1: G = zeros(1,size(B,2)+size(A,2)); G(1:2:end) = A; G(2:2:end) = B;
合并结果为:
G =
1 -1 2 -2 3 -3 4 -4
方法二:
% method2: H = [A' B']'; H = reshape(H, 1, length(A)+length(B));
合并结果为:
H =
1 -1 2 -2 3 -3 4 -4
方法三:
% method3: 对method2 进行改进 I = reshape([A;B], 1, []); % v7以上版本,才支持.
合并结果为:
I =
1 -1 2 -2 3 -3 4 -4
方法四:
% method4: K = kron(A,[1 0]) + kron(B, [0 1]);
合并结果为:
K =
1 -1 2 -2 3 -3 4 -4
其他操作:
% 其他操作 L = zeros(1,size(D,2)+size(C,2)); L(1:2:end) = C; L(2:2:end) = D; M = zeros(1,size(L,2)+size(G,2)); M(1:2:end) = G; M(2:2:end) = L;
合并结果为:
L =
5 -5 6 -6 7 -7 8 -8
M =
1 5 -1 -5 2 6 -2 -6 3 7 -3 -7 4 8 -4 -8
【若有转载,须注明出处!!!】
本文来自网络,不代表协通编程立场,如若转载,请注明出处:https://net2asp.com/6da111631b.html
