【こつこつPython】Pythonで配列の要素を繰り返す方法|numpy.repeat

Pythonで配列の要素を繰り返す方法です。
使用するのはPythonのnumpyライブラリのrepeat関数です。

import numpy as np

このような配列を使用します。

a = np.array([1, 2, 3])
a

まず、repeat関数を使用して、配列の要素を繰り返してみましょう。
引数に配列と繰り返す回数を指定します。
実行します。

np.repeat(a, 3)

配列aの各要素が3回ずつ繰り返された配列を作成できました。

今度はこのような2次元配列を使用します。

b = np.array([[1, 2], [3, 4]])
b

repeat関数を使用して、2次元配列bの要素を繰り返してみましょう。
実行します。

np.repeat(b, 2)

配列bの各要素が2回ずつ繰り返された配列を作成できました。
なお、repeat関数はデフォルトでは各要素を指定数繰り返した1次元配列を返します。

引数axisに0を指定すると、各行ごとに繰り返します。
実行します。

np.repeat(b, 2, axis=0)

各行ごとに繰り返した配列を作成できました。

引数axisに1を指定すると、各列ごとに繰り返します。
実行します。

np.repeat(b, 2, axis=1)

各列ごとに繰り返した配列を作成できました。

なお、似た関数にtile関数があります。
tile関数は各要素ごとではなく、配列全体をひとかたまりとして繰り返します。
確認してみましょう。

np.tile(a, 3)

配列aをひとかたまりとして、3回繰り返された配列を作成できました。

関連メソッド

【こつこつPython】Pythonで配列をタイル状に繰り返す方法|numpy.tile

【毎日Python】Pythonで全ての要素が0や1の配列を作成する方法|numpy.zeros/ones