matlab 让数组每个元素重复出现

直接使用repelem或者利用函数repmat和 reshape

1.repelem 重复数组元素副本

u = repelem(v,n),返回一个重复 v 中元素的向量,其中 v 是一个标量或向量。
B = repelem(A,r1,...,rN),将 A 中的每个元素依 r1,...,rN 进行重复,返回一个数组。

举例:

a=[1 2 3];
u = repelem(a,2);

>> u
u =
     1     1     2     2     3     3

2.

repmat 矩阵的复制排列 

B=repmat(A,n):返回B是一个n*n块大小的矩阵,每一块矩阵都是A

B=repmat(A,m,n):返回值是由m*n个块组成的大矩阵,每一个块都是矩阵A。

B=repmat(A,[m,n,p,…]):返回值B是一个多维数组形式的块,每一个块都是矩阵A

reshape 将矩阵重排:

reshape(M, m, n)将矩阵M重排成m * n

举例:

a = [1 2 3 ];
repeat = 2;                  % 要重复几次就写几
tmp = repmat(a, repeat, 1);
b=reshape(tmp, 1, length(a)*repeat);
b

>> b
b =
     1     1     2     2     3     3

matlab如何让数组每个元素重复出现?_百度知道 (baidu.com)