Ответ 1
y[1::2]
должен выполнить эту работу. Здесь второй элемент выбирается путем индексации с 1, а затем берется с интервалом 2.
Если у меня есть массив x и выполняйте np.repeat(x,2)
, я практически дублирую массив.
>>> x = np.array([1,2,3,4])
>>> np.repeat(x, 2)
array([1, 1, 2, 2, 3, 3, 4, 4])
Как я могу сделать обратное, чтобы в итоге получить исходный массив?
Он также должен работать со случайным массивом y:
>>> y = np.array([1,7,9,2,2,8,5,3,4])
Как я могу удалить каждый другой элемент, чтобы в итоге получилось следующее?
array([7, 2, 8, 3])
y[1::2]
должен выполнить эту работу. Здесь второй элемент выбирается путем индексации с 1, а затем берется с интервалом 2.
У меня возникли проблемы с тем, что, если вы попросили ввести массив пользователем?
Таким образом, создание функции помогло много:
def remove_every_other(my_list):
return my_list[::2]
pass
Это помогло мне понять, что если какой-либо пользователь должен был вводить в массив, мы могли бы обработать его, вызвав эту функцию.