Повторите значения от последовательности до n - PullRequest
0 голосов
/ 02 января 2019

Скажем, я хочу повторить последовательность последовательных 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])

1 Ответ

0 голосов
/ 02 января 2019

np.resize может работать для вас.

In [43]: seq = np.array([1,2,3,4])
In [44]: np.resize(seq, 6)
Out[44]: array([1, 2, 3, 4, 1, 2])

Мы не используем resize (функцию или метод) так часто, но в этом случае шаблон заполнения для версии функции соответствует вашим потребностям.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...