Функция put
Функция put заменяет элементы массива
по заданным индексам на указанные значения.
Первым параметром функция принимает массив,
втором параметром - индексы элементов для замены,
третьим - значения для вставки. Функция изменяет
массив на месте и не возвращает новый массив.
Синтаксис
np.put(arr, indices, values)
Пример
Давайте заменим элементы с индексами 1, 3 и 4 на новые значения:
import numpy as np
arr = np.array([10, 20, 30, 40, 50])
np.put(arr, [1, 3, 4], [100, 200, 300])
print(arr)
Результат выполнения кода:
[ 10 100 30 200 300]
Пример
Если значений для вставки меньше, чем индексов, то значения повторяются циклически:
import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6])
np.put(arr, [0, 2, 4, 5], [99, 88])
print(arr)
Результат выполнения кода:
[99 2 88 4 99 88]
Пример
Работа функции с двумерным массивом. Индексация происходит по плоскому представлению:
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6]])
np.put(arr, [0, 3, 5], [100, 200, 300])
print(arr)
Результат выполнения кода:
[[100 2 3]
[200 5 300]]
Пример
Можно использовать отрицательные индексы для доступа к элементам с конца:
import numpy as np
arr = np.array([10, 20, 30, 40, 50])
np.put(arr, [-1, -3], [999, 888])
print(arr)
Результат выполнения кода:
[ 10 888 30 40 999]
Пример
Использование срезов для замены части массива:
import numpy as np
arr = np.arange(10)
indices = np.arange(2, 7)
np.put(arr, indices, [100, 200, 300])
print(arr)
Результат выполнения кода:
[ 0 1 100 200 300 100 6 7 8 9]
Смотрите также
-
функцию
take,
которая извлекает элементы по индексам -
функцию
place,
которая заменяет элементы по маске -
функцию
putmask,
которая заменяет элементы по условию -
функцию
put_along_axis,
которая заменяет элементы вдоль указанной оси