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

【若有转载,须注明出处!!!】

  • 3
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值