numpy.repeat()
numpy.repeat(a, n) はスカラーや配列 a の各要素を n 回 繰り返す 配列を生成します。
# NUMPY_REPEAT
# In[1]
import numpy as np
# 1を5個並べる
a = np.repeat(1, 5)
print(a)
# [1 1 1 1 1]
第 1 引数にリストや配列を渡すと、要素ごとに指定回数だけ繰り返します。
# In[2]
# 1と2を3回繰り返す
b = np.repeat([1, 2], 3)
print(b)
# [1 1 1 2 2 2]
第 1 引数に 2 次元配列を渡して axis を指定しなければ、各要素を指定回数だけ繰り返す 1 次元配列が生成されます。
# In[3]
# 2次元配列を定義
x = np.array([[1, 2],
[3, 4]])
# xの各要素を2回ずつ繰り返す
c = np.repeat(x, 2)
print(c)
# [1 1 2 2 3 3 4 4]
第 1 引数に 2 次元配列を渡して axis=1 を指定すると、各要素を列方向に繰り返す配列が生成されます。
# In[4]
# xの各要素を列方向に3回ずつ繰り返す2次元配列
d = np.repeat(x, 3, axis=1)
print(d)
# [[1 1 1 2 2 2]
# [3 3 3 4 4 4]]
第 1 引数に 2 次元配列を渡して axis=0 を指定すると、各要素を行方向に繰り返す配列を生成します。
# In[5]
# xの各要素を行方向に2回ずつ繰り返す2次元配列
e = np.repeat(x, 2, axis=0)
print(e)
# [[1 2]
# [1 2]
# [3 4]
# [3 4]]
コメントを書く