matlab矩阵复制函数:repmat

时间:2020-12-10 06:47:30
repmat 即 Replicate Matrix ,复制和平铺矩阵,是 MATLAB 里面的一个函数。
中文名
复制和平铺矩阵
外文名
repmat
又    名
Replicate Matrix
类    型
函数

目录

1语法

2实例

3文献

1语法编辑

B = repmat(A,m,n)
B = repmat(A,[m n])
B = repmat(A,[m n p...])

2实例编辑

一、repmat( NaN,m,n)等价于NaN(m,n).
二、repmat(single( inf),m,n)等价于inf(m,n,'single').
三、repmat(int8(0),m,n)等价于zeros(m,n,'int8').
四、repmat(uint32(1),m,n)等价于ones(m,n,'uint32').
五、repmat( eps,m,n)等价于eps(ones(m,n)).
一、B = repmat(A,m,n)
将矩阵 A 复制 m×n 块,即把 A 作为 B 的元素,B 由 m×n 个 A 平铺而成。B 的维数是 [size(A,1)*m, size(A,2)*n] 。
>> A = [1,2;3,4]
A =
1 2
3 4
>> B = repmat(A,2,3)
B =
1 2 1 2 1 2
3 4 3 4 3 4
1 2 1 2 1 2
3 4 3 4 3 4
二、B = repmat(A,[m n])
与 B = repmat(A,m,n) 用法一致。
三、B = repmat(A,[m n p...])
B 是由 m×n×p×… 个 A 平铺而成的高维数组。B 的维数是 [size(A,1)*m, size(A,2)*n, size(A,3)*p, ...] 。
>> A =  eye(2,2)
A =
1 0
0 1
>> B = repmat(A,[2 3 2])
B(:,:,1) =
1 0 1 0 1 0
0 1 0 1 0 1
1 0 1 0 1 0
0 1 0 1 0 1
B(:,:,2) =
1 0 1 0 1 0
0 1 0 1 0 1
1 0 1 0 1 0
0 1 0 1 0 1