Скажем, я хочу повторить последовательность последовательных 0
с и 1
с до n
.Один из способов, который я могу придумать:
seq = np.array([0,1])
a = np.tile(seq, math.ceil(n/2))[:n]
Где я использую math.ceil(n/2)
, так что в случае наличия нечетного n
генерируется только дополнительное число.Но есть ли более краткий способ сделать это?В идеале это должно быть расширено до любой заданной последовательности, например:
n = 6
seq = np.array([1,2,3,4])
np.tile(seq, math.ceil(n/2))[:n]
array([1, 2, 3, 4, 1, 2])