numpy.resize#

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

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

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

参数:
a类数组

要调整大小的数组。

new_shape整数或整数元组

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

返回:
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]])