文档

repmat

阵列的重复副本

句法

B = repmat(A,n)的
B = repmat(A,R1,...,RN)
B = repmat(A,R)

描述

B = repmat(一个ñ返回包含以下内容的数组ñ副本一个在行和列的尺寸。的大小尺寸(A)* n个什么时候一个是一个矩阵。

B = repmat(一个R1,...,RN指定标量清单,rN r1 . .,描述的是如何复制一个被布置在每个维度。什么时候一个ñ尺寸,尺寸尺寸(A)。* [R1 ... RN]。例如,repmat([1 2 3 4],2,3)返回一个4×6矩阵。

B = repmat(一个[R用行向量指定重复模式[R。例如,repmat(A,[2 3])返回的结果相同repmat (2, 3)

例子

全部收缩

成2×2块结构的矩阵的重复拷贝。

A = diag([100 200 300])
A =3×3100 0 0 0 200 0 0 0 300
B = repmat (2)
B =6×6100 0 0 100 0 0 0 200 0 0 200 0 0 0 300 0 0 300 100 0 0 100 0 0 0 200 0 0 200 0 0 0 300 0 0 300

成2×3块排列为矩阵的重复拷贝。

A = diag([100 200 300])
A =3×3100 0 0 0 200 0 0 0 300
B = repmat(A,2,3)
B =6×9100 0 0 100 0 0 100 0 0 0 200 0 0 200 0 0 200 0 0 0 300 0 0 300 0 0 300 100 0 0 100 0 0 100 0 0 0 200 0 0 200 0 0 200 0 0 0 300 0 0300 0 0 300

将一个矩阵复制成2×3×2的块排列。

A = [12];3 4]
A =2×21 2 3 4
B = repmat(A,[2 3 2])
B = B (:: 1) = 1 2 1 2 1 2 3 4 3 4 2 3 4 1 1 2 1 2 3 4 3 4 3 4 B (:,: 2) = 1 2 1 2 1 2 3 4 3 4 2 3 4 1 1 2 1 2 3 4 3 4 3 4

将一个行向量垂直堆叠四次。

一个= 1:4;B = repmat (4 - 1)
B =4×41 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4

水平地堆叠的列向量四次。

A =(1:3)';B = repmat(A,1,4)
B =3×41 1 1 1 2 2 2 2 3 3 3 3

创建变量表年龄高度

A =表([39; 26],[70; 63],'VariableNames',{“年龄”“高度”})
A =2×2表年龄身高___ ______ 39 70 26 63

成2×3块格式表中的重复拷贝。

B = repmat(A,2,3)
B =4×6表年龄身高Age_1 HEIGHT_1 Age_2 Height_2 ___ ______ _____ ________ _____ ________ 39 70 39 70 39 70 26 63 26 63 26 63 39 70 39 70 39 70 26 63 26 63 26 63

repmat重复表的条目,并追加了一些新的变量名。

输入参数

全部收缩

输入阵列,指定为一个标量,矢量,矩阵或多维数组。

数据类型:||INT8|int16|int32|Int64的|UINT8|UINT16|UINT32|UINT64|合乎逻辑|字符||结构||细胞
复数支持:万博1manbetx

输入数组在行和列维度中重复的次数,指定为整数值。如果ñ0或负的,其结果是一个空数组。

数据类型:||INT8|int16|int32|Int64的|UINT8|UINT16|UINT32|UINT64

重复因子为每个维度,指定为整数值的单独的参数。如果有任何重复因子0或负的,其结果是一个空数组。

数据类型:||INT8|int16|int32|Int64的|UINT8|UINT16|UINT32|UINT64

每个维度的重复因子向量,指定为整数值的行向量。如果有任何值[R0或负的,其结果是一个空数组。

数据类型:||INT8|int16|int32|Int64的|UINT8|UINT16|UINT32|UINT64

提示

  • 若要将输入的张量积与一组1相乘,可使用克隆亚麻。例如,堆叠的行矢量A = 1:3垂直四次,你可以使用B = KRON(A,一(4,1))

  • 创建块阵列和在单次通过,使用执行二进制运算bsxfun。在某些情况下,bsxfun提供了一种更简单和更高效的存储器解决方案。例如,添加的载体A = 1:5B = (1:10) '以产生一个10×5阵列,使用bsxfun(@加,A,B)代替repmat(A,10,1)+ repmat(B,1,5)

  • 什么时候一个是某种类型的标量,你可以使用其他函数来得到的结果为相同repmat

    repmat语法 等量替代
    repmat (NaN, m, n) 的NaN(M,N)
    repmat(单(INF),M,N) INF(M,N, '单')
    repmat(INT8(0),M,N) 零(M,N, 'INT8')
    repmat(UINT32(1)中,m,n)的 者(M,N, 'UINT32')
    repmat(EPS,M,N) EPS(个(M,N))

扩展功能

之前介绍过的R2006a

这个话题有用吗?