#python #arrays #numpy
#python #массивы #numpy
Вопрос:
У меня есть следующий массив numpy (в качестве примера):
[0,1,5,4,3]
Есть ли какой-либо способ «повторить» этот массив, но определенным образом:
Мне нужен конечный массив формы 25, но расположенный таким образом, чтобы сначала у меня было 5 нулей, затем — 5 единиц, затем — 5 пятерок и т.д.
Пример желаемого результата:
[0,0,0,0,0,1,1,1,1,1,
5,5,5,5,5,4,4,4,4,4
3,3,3,3,3]
если я это сделаю np.append(arr, arr)
— это даст мне два начальных упорядоченных массива, и это не моя цель
Кстати, мой реальный массив не отсортирован и в конце должен остаться несортированным.
Заранее спасибо!
Ответ №1:
Используйте np.repeat
.
>>> np.repeat([0,1,5,4,3], 5)
array([0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 5, 5, 5, 5, 5, 4, 4, 4, 4, 4, 3, 3,
3, 3, 3])