numpy.resize#

numpy.resize(a, new_shape)[原始碼]#

傳回具有指定形狀的新陣列。

如果新陣列大於原始陣列,則新陣列會以 a 的重複副本填滿。請注意,此行為與 a.resize(new_shape) 不同,後者會以零而不是 a 的重複副本填滿。

參數:
aarray_like

要調整大小的陣列。

new_shapeint 或 int 元組

調整大小後的陣列形狀。

傳回:
reshaped_arrayndarray

新陣列由舊陣列中的資料組成,必要時重複以填滿所需的元素數量。資料會以 C 順序迭代陣列來重複。

另請參閱

numpy.reshape

reshape 在不改變總大小的情況下重塑陣列。

numpy.pad

pad 擴大和填充陣列。

numpy.repeat

repeat 重複陣列的元素。

ndarray.resize

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]])