numpy.resize#

numpy.resize(a, new_shape)[source]#

返回一个具有指定形状的新数组。

如果新数组大于原始数组,则新数组将填充 a 的重复副本。请注意,此行为与 a.resize(new_shape) 不同,后者使用零填充而不是 a 的重复副本。

参数:
aarray_like

要调整大小的数组。

new_shapeint 或 int 元组

调整大小后的数组的形状。

返回值:
reshaped_arrayndarray

新数组由旧数组中的数据形成,如有必要,重复以填充所需的元素数量。数据以 C 顺序遍历数组进行重复。

参见

numpy.reshape

在不改变总大小的情况下重塑数组。

numpy.pad

扩展和填充数组。

numpy.repeat

重复数组的元素。

ndarray.resize

就地调整数组大小。

备注

当数组的总大小没有改变时,应该使用 reshape。在大多数其他情况下,索引(以减小尺寸)或填充(以增大尺寸)可能是更合适的解决方案。

警告:此功能**不**分别考虑轴,即不应用插值/外推。它使用所需的元素数量填充返回数组,以 C 顺序遍历 a,忽略轴(如果新形状更大,则从开头循环回来)。因此,此功能不适合调整图像或每个轴代表单独且不同的实体的数据的大小。

示例

>>> import numpy as np
>>> 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]])