一、resize函數的基本介紹
numpy.resize函數是用來調整數組大小的函數,它的形式為numpy.resize(a, new_shape),其中a表示需要調整大小的數組,new_shape為新的大小。
resize函數有一個特點,就是它可以重複填充原數組來擴大數組大小,也可以從原數組中削去一部分來縮小數組大小。同時,如果new_shape比原數組a的元素數量多,那麼resize函數會默認重複填充原數組。
二、resize函數的參數詳解
resize函數有兩個參數:數組a和新的大小new_shape。其中,new_shape既可以是一個整數,也可以是一個元組,表示新數組的大小。下面我們來詳細介紹兩個參數的用法。
1、參數a:需要調整大小的數組,它既可以是一個列表,也可以是一個numpy.ndarray對象。
2、參數new_shape:新數組的大小,可以是一個整數,也可以是一個表示大小的元組。如果是整數,則表示新數組的元素數量;如果是元組,則表示新數組的大小。
三、resize函數的用法舉例
下面我們來舉例說明resize函數的用法。首先我們創建一個二維數組a:
import numpy as np a = np.array([[1,2],[3,4],[5,6]]) print('原始數組a:', a)
輸出結果如下:
原始數組a: [[1 2]
[3 4]
[5 6]]
首先我們演示一下參數為整數的情況:
b = np.resize(a, 4) print('縮小數組b:', b) c = np.resize(a, 8) print('擴大數組c:', c)
輸出結果分別是:
縮小數組b: [1 2 3 4]
擴大數組c: [1 2 3 4 5 6 1 2]
可以看出,在參數為整數的情況下,resize函數默認是從原數組的第一個元素開始重複填充。
下面我們演示一下參數為元組的情況:
d = np.resize(a, (2,3)) print('調整數組d:', d)
輸出結果如下:
調整數組d: [[1 2 3]
[4 5 6]]
可以看出,resize函數按照元組指定的大小重新構造了一個新的二維數組。
再來一個計算機視覺中經常使用的例子,將一個圖片轉換成特定大小:
import cv2 img = cv2.imread('example.jpg') img = np.resize(img, (500,500,3)) cv2.imwrite('new_example.jpg', img) print('圖片轉換成功')
四、resize函數的應用場景
resize函數可以應用於調整數組大小的場景,比如在計算機視覺中將圖片轉換成特定大小,或者在研究數據分析中將數據調整到特定大小等等。使用resize函數可以輕鬆實現數組大小的調整,同時不會影響原來的數據大小和內容。需要注意的是,在擴大數組大小時,resize函數默認是從原數組的第一個元素開始重複填充。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/199366.html