numpy.resize
- numpy.resize(a, new_shape)[source]
-
Возвращает новый массив с заданной формой.
Если новый массив больше исходного массива, то новый массив заполняется повторяющимися копиями
a. Обратите внимание, что это поведение отличается от a.resize(new_shape), которое заполняет нулями вместо повторяющихся копийa.- Параметры
-
- aarray_like
-
Массив, подлежащий изменению формы.
- new_shapeint или кортеж из int
-
Форма изменённого массива.
- Возвращаемое значение
-
- reshaped_arrayndarray
-
Новый массив формируется из данных в старом массиве, повторяющихся при необходимости, чтобы заполнить требуемое количество элементов. Данные повторяются, итерируя по массиву в порядке C.
См. также
np.reshape-
Изменение формы массива без изменения общего размера.
np.pad-
Увеличение и заполнение массива.
np.repeat-
Повторение элементов массива.
ndarray.resize-
Изменение формы массива на месте.
Примечания
Когда общий размер массива не изменяется
reshapeследует использовать. В большинстве других случаев индексирование (для уменьшения размера) или заполнение (для увеличения размера) могут быть более подходящим решением.Предупреждение: Эта функциональность не учитывает оси отдельно, т.е. не применяет интерполяцию/экстраполяцию. Она заполняет возвращаемый массив требуемым числом элементов, итерируя по
aв порядке C, не учитывая оси (и циклично возвращаясь к началу, если новая форма больше). Поэтому данная функциональность не подходит для изменения размера изображений или данных, где каждая ось представляет собой отдельную и самостоятельную сущность.Примеры
>>> a=np.array([[0,1],[2,3]]) >>> np.resize(a,(2,3)) array([[0, 1, 2], [3, 0, 1]]) >>> np.resize(a,(1,4)) array([[0, 1, 2, 3]]) >>> np.resize(a,(2,4)) array([[0, 1, 2, 3], [0, 1, 2, 3]])
© 2005–2022 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.21/reference/generated/numpy.resize.html