Repeat copies of array elements
collapse all in page
Syntax
u = repelem(v,n)
B = repelem(A,r1,...,rN)
Description
example
u = repelem(v,n)
,where v
is a scalar or vector, returns a vectorof repeated elements of v
.
If
n
is a scalar, then each elementofv
is repeatedn
times. Thelength ofu
islength(v)*n
.If
n
is a vector, then it mustbe the same length asv
. Each element ofn
specifiesthe number of times to repeat the corresponding element ofv
.
This syntax is not supported for table
input.
example
B = repelem(A,r1,...,rN)
returnsan array with each element of A
repeated accordingto r1,...,rN
. Each r1,...,rN
musteither be a scalar or a vector with the same length as A
inthe corresponding dimension. For example, if A
isa matrix, repelem(A,2,3)
returns a matrix containinga 2
-by-3
block of each elementof A
.
Examples
collapse all
Repeat Vector Elements
Open Live Script
Create a vector and repeat each of its elements three times into a new vector.
v = [1 2 3 4];u = repelem(v,3)
u = 1×12 1 1 1 2 2 2 3 3 3 4 4 4
Repeat the first two elements of v
twice and the last two elements three times.
u = repelem(v,[2 2 3 3])
u = 1×10 1 1 2 2 3 3 3 4 4 4
Repeat Matrix Elements
Open Live Script
Create a matrix and repeat each element into a 3-by-2 block of a new matrix.
A = [1 2; 3 4]
A = 2×2 1 2 3 4
B = repelem(A,3,2)
B = 6×4 1 1 2 2 1 1 2 2 1 1 2 2 3 3 4 4 3 3 4 4 3 3 4 4
Repeat Matrix Columns
Open Live Script
Create a matrix and copy its columns into a new array, repeating the first column twice and second column three times.
A = [1 2; 3 4]
A = 2×2 1 2 3 4
B = repelem(A,1,[2 3])
B = 2×5 1 1 2 2 2 3 3 4 4 4
Combine Vector Elements
Open Live Script
Create two column vectors.
A = [1; 3; 5];B = [2; 4];
Generate all element combinations of the two vectors by using repelem
and repmat
. Each row of the output T
is a combination with the first element coming from the first vector and the second element coming from the second vector. This command is equivalent to finding the Cartesian product of two vectors.
T = [repelem(A,numel(B)) repmat(B,numel(A),1)]
T = 6×2 1 2 1 4 3 2 3 4 5 2 5 4
Starting in R2023a, you can also use the combinations function to generate all element combinations of two vectors.
T = combinations(A,B)
T=6×2 table A B _ _ 1 2 1 4 3 2 3 4 5 2 5 4
Input Arguments
collapse all
v
— Input element
scalar | vector
Input element, specified as a scalar or a vector.
Data Types: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| logical
| char
| string
| struct
| table
| cell
| datetime
| duration
Complex Number Support: Yes
n
— Number of times to repeat each element
scalar | vector
Number of times to repeat each element, specified as a scalaror a vector. If n
is a scalar, then all elementsof v
are repeated n
times. If n
isa vector, then each element of n
specifies thenumber of times to repeat the corresponding element of v
.In either case, n
must be integer-valued.
Data Types: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
A
— Input array
matrix | multidimensional array
Input array, specified as a matrix or multidimensional array.
Data Types: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| logical
| char
| struct
| table
| cell
| datetime
| duration
Complex Number Support: Yes
r1,...,rN
— Repetition factors for each dimension (as separate arguments)
scalars | vectors
Repetition factors for each dimension, specified as separatearguments of integer-valued scalars or vectors. If A
isa table, each repetition factor must be a scalar.
Data Types: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
Output Arguments
collapse all
u
— Output vector
vector
Output vector. If v
is a row vector or scalar, u
isa row vector. If v
is a column vector, u
isalso a column vector.
Data Types: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| logical
| char
| string
| struct
| table
| cell
| datetime
| duration
B
— Output array
matrix | multidimensional array
Output array, returned as a matrix or multidimensional array.
Data Types: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| logical
| char
| string
| struct
| table
| cell
| datetime
| duration
Extended Capabilities
Tall Arrays
Calculate with arrays that have more rows than fit in memory.
This function supports tall arrays with the limitations:
The two-input syntax is not supported.
The replication factor in the first dimension mustbe 1. For example,
repelem(TA,1,n,p,...)
.
For more information, see Tall Arrays.
C/C++ Code Generation
Generate C and C++ code using MATLAB® Coder™.
Usage notes and limitations:
The input must be a vector or matrix. The input cannotbe a multidimensional array.
GPU Code Generation
Generate CUDA® code for NVIDIA® GPUs using GPU Coder™.
Usage notes and limitations:
The input must be a vector or matrix. The input cannot be a multidimensional array.
Thread-Based Environment
Run code in the background using MATLAB® backgroundPool
or accelerate code with Parallel Computing Toolbox™ ThreadPool
.
This function fully supports thread-based environments. For more information, see Run MATLAB Functions in Thread-Based Environment.
GPU Arrays
Accelerate code by running on a graphics processing unit (GPU) using Parallel Computing Toolbox™.
This function fully supports GPU arrays. For more information, see Run MATLAB Functions on a GPU (Parallel Computing Toolbox).
Distributed Arrays
Partition large arrays across the combined memory of your cluster using Parallel Computing Toolbox™.
This function fully supports distributed arrays. For more information, see Run MATLAB Functions with Distributed Arrays (Parallel Computing Toolbox).
Version History
Introduced in R2015a
See Also
kron | repmat
MATLAB-Befehl
Sie haben auf einen Link geklickt, der diesem MATLAB-Befehl entspricht:
Führen Sie den Befehl durch Eingabe in das MATLAB-Befehlsfenster aus. Webbrowser unterstützen keine MATLAB-Befehle.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- Deutsch
- English
- Français
- United Kingdom (English)
Contact your local office