Numpy Array Reshape

Bài trước chúng ta đã tìm hiểu về shape trong Numpy array, bài này chúng ta sẽ đi tìm hiểu về reshape.

Reshape array là gì ?

Trong Numpy array, reshape có nghĩa là thay đổi shape của một mảng array.

Shape của một mảng array là số phần tử trong mỗi chiều.

Cách sử dụng reshape array trong Numpy.

Chúng ta có thể sử dụng thuộc tính reshape trong numpy array để thay đổi, thêm hoặc xóa chiều hoặc thay đổi số phần tử trong mỗi chiều.

Sử dụng reshape để chuyển mảng 1 chiều (1-D) thành mảng 2 chiều (2-D).

Ví dụ

import numpy as np

arr = np.array([1,2,3,4,5,6,7,8])
arr_reshape = arr.reshape(2,4)
print(arr_reshape)

Kết quả :

[[1 2 3 4]
 [5 6 7 8]]

 

Sử dụng reshape để chuyển mảng 1 chiều (1-D) thành mảng 3 chiều (3-D).

Ví dụ

import numpy as np

arr = np.array([1,2,3,4,5,6,7,8,9,10,11,12])
arr_reshape = arr.reshape(2,2,3)
print(arr)
print(arr_reshape)

Kết quả :

[[[ 1  2  3]
  [ 4  5  6]]

 [[ 7  8  9]
  [10 11 12]]]

 

Sử dụng reshape để chuyển mảng nhiều chiều (n-D) thành mảng 1 chiều (1-D).

Để chuyển mảng nhiều chiều thành mảng một chiều sử dụng reshape (-1).

Ví dụ

import numpy as np

arr = np.array([[[1,2,3],[4,5,6]],[[7,8,9],[10,11,12]]])
arr_reshape = arr.reshape(-1)
print(arr)
print(arr_reshape)

Kết quả :

[ 1  2  3  4  5  6  7  8  9 10 11 12]