Main Content
repelem
Repeat copies of array elements
Syntax
Description
example
u = repelem(v,n), where v is a scalar or vector, returns a vector of repeated elements of v.
If n is a scalar, then each element of v is repeated n times. The length of u is length(v)*n.
If n is a vector, then it must be the same length as v. Each element of n specifies the number of times to repeat the corresponding element of v.
This syntax is not supported for table input.
example
B = repelem(A,r1,...,rN) returns an array with each element of A repeated according to r1,...,rN. Each r1,...,rN must either be a scalar or a vector with the same length as A in the corresponding dimension. For example, if A is a matrix, repelem(A,2,3) returns a matrix containing a 2-by-3 block of each element of A.
Examples
collapse all
Repeat Vector Elements
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 = 1×10 1 1 2 2 3 3 3 4 4 4
Repeat Matrix Elements
Create a matrix and repeat each element into a 3-by-2 block of a new matrix.
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
Create a matrix and copy its columns into a new array, repeating the first column twice and second column three times.
B = 2×5 1 1 2 2 2 3 3 4 4 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 scalar or a vector. If n is a scalar, then all elements of v are repeated n times. If n is a vector, then each element of n specifies the number 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 separate arguments of integer-valued scalars or vectors. If A is a 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 is a row vector. If v is a column vector, u is also 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 must be 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 cannot be 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