Main Content

repelem

配列要素のコピーの繰り返し

説明

u = repelem(v,n) は、v がスカラーまたはベクトルの場合、v の要素の繰り返しからなるベクトルを返します。

  • n がスカラーの場合、v の各要素が n 回繰り返されます。u の長さは length(v)*n になります。

  • n がベクトルの場合、v と同じ長さでなければなりません。n の各要素は、対応する v の要素を繰り返す回数を指定します。

この構文は、table の入力ではサポートされません。

B = repelem(A,r1,...,rN) は、A の各要素を r1,...,rN に従って繰り返す配列を返します。各 r1,...,rN は、スカラーか、対応する次元における A と同じ長さをもつベクトルでなければなりません。たとえば、A が行列の場合、repelem(A,2,3) は、A の各要素の 23 列のブロックを含む行列を返します。

すべて折りたたむ

ベクトルを作成し、その各要素を 3 回繰り返して新しいベクトルを作成します。

v = [1 2 3 4];
u = repelem(v,3)
u = 1×12

     1     1     1     2     2     2     3     3     3     4     4     4

v の最初の 2 つの要素を 2 回繰り返し、最後の 2 つの要素を 3 回繰り返します。

u = repelem(v,[2 2 3 3])
u = 1×10

     1     1     2     2     3     3     3     4     4     4

行列を作成し、その各要素を繰り返して 3 行 2 列のブロックをもつ新しい行列を作成します。

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

行列を作成してその列を新しい配列にコピーします (1 列目を 2 回繰り返し、2 列目を 3 回繰り返す)。

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

2 列のベクトルを作成します。

A = [1; 3; 5];
B = [2; 4];

repelem および repmat を使用して 2 つのベクトルのすべての要素の組み合わせを生成します。出力 T の各行は、最初のベクトルからの最初の要素と 2 番目のベクトルからの 2 番目の要素の組み合わせです。このコマンドは、2 つのベクトルのデカルト積を求めることと等価です。

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

R2023a 以降では、関数combinationsを使用して、2 つのベクトルの要素のすべての組み合わせを生成することもできます。

T = combinations(A,B)
T=6×2 table
    A    B
    _    _

    1    2
    1    4
    3    2
    3    4
    5    2
    5    4

入力引数

すべて折りたたむ

入力要素。スカラーまたはベクトルとして指定します。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char | string | struct | table | cell | datetime | duration
複素数のサポート: あり

各要素を繰り返す回数。スカラーまたはベクトルとして指定します。n がスカラーの場合、v のすべての要素が n 回繰り返されます。n がベクトルの場合、n の各要素は、v の対応する要素を繰り返す回数を指定します。どちらの場合も n は整数値でなければなりません。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

入力配列。行列または多次元配列として指定します。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char | struct | table | cell | datetime | duration
複素数のサポート: あり

各次元の繰り返し数。整数値のスカラーまたはベクトルの個別の引数として指定します。A がテーブルの場合、各繰り返し数はスカラーでなければなりません。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

出力引数

すべて折りたたむ

出力ベクトル。v が行ベクトルまたはスカラーの場合、u は行ベクトルになります。v が列ベクトルの場合、u も列ベクトルになります。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char | string | struct | table | cell | datetime | duration

出力配列。行列または多次元配列として返されます。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char | string | struct | table | cell | datetime | duration

拡張機能

バージョン履歴

R2015a で導入

参考

|