1. 程式人生 > >Python numpy.reshape用法

Python numpy.reshape用法

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

這裡順便說一下如何看輸出的矩陣或自己設定的矩陣是幾維的:
數一下[的個數,幾個就是幾維。