Python numpy.reshape用法
阿新 • • 發佈:2018-11-07
numpy.reshape(a, newshape, order='C')
這個函式的作用就是把資料原來的尺寸更改為我們想要的尺寸。
引數:
- a: array_like
我們想要的變更尺寸的陣列。 - newshape: int or int of ints
想變成什麼樣的尺寸,這時要注意這個尺寸產生的數值數目要等於原陣列數值陣列。如:原始陣列尺寸為1 × 10,我們要分成2 × 5的陣列,此時1 × 10 = 2 × 5。若中一個值設定為-1
,python會自動幫我們計算這個-1應為多少。 - order: {‘C’, ‘F’, ‘A’}, 可選
重新分配的順序,很少用。
返回:
- reshaped_array : ndarray
一個重新調整好尺寸的陣列
例子
>>> a = np.arange(6).reshape((3, 2))
>>> a
array([[0, 1],
[2, 3],
[4, 5]])
>>> a = np.array([[1,2,3], [4,5,6]])
>>> np.reshape(a, 6)
array([1, 2, 3, 4, 5, 6])
>>> np.reshape(a, 6, order='F')
array([1, 4, 2, 5, 3, 6])
-1的用法:
>>> np.reshape(a, (3,-1)) # the unspecified value is inferred to be 2
array([[1, 2],
[3, 4],
[5, 6]])
這裡順便說一下如何看輸出的矩陣或自己設定的矩陣是幾維的:
數一下[
的個數,幾個就是幾維。