Numpy Tạo mảng Array

Numpy là một thư viện trong python, được sử dụng rất nhiều trong lập trình khoa học dữ liệu (Data science), học máy (Machine Learning) và học sâu (Deep Learning).Do đó để trở thành kỹ sư lập trình AI bạn cần phải có kiến thức về Numpy. Bài trước chúng ta đã tìm hiểu về thư viện numpy là gì. Bài này chúng ta sẽ đi tìm hiểu về các sử dụng numpy và cách tạo mảng đối tượng trong numpy.

Cách tạo mảng đối tượng sử dụng thư viện Numpy.

Numpy được sử dụng để làm việc với mảng. Mảng đối tượng trong Numpy được gọi là ndarray.

Để tạo một mảng đối tượng trong Numpy sử phương thức array() .

Trong Numpy, để tạo một ndarray, chúng ta có thể truyền vào một danh sách (List), tuple hoặc bất kỳ đối tượng giống mảng nào vào phương thức array () và nó sẽ được chuyển đổi thành một ndarray: 

Ví dụ tạo mảng đối tượng trong Numpy như sau:

Ví dụ

import numpy as np

numpy_array1 = np.array([2,3,6,8,9])
numpy_array2 = np.array((1,3,6,8,5))
print(numpy_array1)
print(numpy_array2)

Để kiểm tra kiểu dữ liệu của mảng vừa tạo được ở trên chúng ta sử dụng phương thức type(). Kết quả trả về kiểu dữ liệu của mảng là : numpy.ndarray . Bạn có thể viết code hoặc copy đoạn code như bên dưới và chạy chương trình để kiểm tra kết quả.

Ví dụ

import numpy as np

numpy_array1 = np.array([2,3,6,8,9])
numpy_array2 = np.array((1,3,6,8,5))
print(numpy_array1)
print(numpy_array2)
print(type(numpy_array1))
print(type(numpy_array2))

Kết quả :

[2 3 6 8 9]
[1 3 6 8 5]
<class 'numpy.ndarray'>
<class 'numpy.ndarray'>

Kích thước , số chiều (Dementions) của mảng trong Numpy.

Kích thước hay số chiều của mảng array trong Numpy là mức độ sâu của mảng (mảng lồng nhau). Nó có thể có 0,1 hoặc nhiều chiều (Dementions).

Mảng vô hướng : 0-D

Mảng 0-D hay còn gọi là mảng vô hướng. Các phần tử trong mảng có giá trị là một mảng 0-D

Ví dụ

import numpy as np

# Mảng vô hướng: 0-D 
arr_0 = np.array(36)
print("Mang 0-D: ", arr_0)

Kết quả :

Mang 0-D:  36

Mảng 1 chiều : 1-D

Mảng 1-D hay còn gọi là mảng 1 chiều. Các phần tử trong mảng có giá trị là mảng 0-D.

Mảng 1 chiều thường được dùng như dãy số, vector.

Ví dụ

import numpy as np

# Mảng 1 chiều: 1-D 
arr_1 = np.array([1,2,3,4,5,6])
print("Mang 1-D: ",arr_1)

Kết quả :

Mang 1-D:  [1 2 3 4 5 6]

Mảng 2 Chiều: 2-D

Mảng 2-D hay còn gọi là mảng 2 chiều. Các phần tử trong mảng có giá trị là mảng 1-D. Những mảng 2 chiều thường sử dụng như ma trận (matrix), 2nd, tensors.

Ví dụ tạo một mảng 2-D (2 chiều) chứa 2 mảng có giá trị là : 1,3,5 và 2,4,6 như sau:

Ví dụ

import numpy as np

# Mảng 2 chiều: 2-D
arr_2 = np.array([[1,2,3],[4,5,6]])
print("Mang 2-D: ",arr_2)

Kết quả :

Mang 2-D:  [[1 2 3]
 [4 5 6]]

Mảng 3 Chiều: 3-D

Mảng có mảng 2-D (2 chiều) làm phần tử của nó gọi là mảng 3-D (3 chiều).

Mảng 3-D này thường được dùng cho một tensor hoặc 3nd.

Ví dụ

import numpy as np

# Mảng 3 chiều: 3-D
arr_3 = np.array([[[1,2,3],[4,5,6]],[[1,2,3],[4,5,6]]])
print("Mang 3-D: ",arr_3)

Kết quả :

Mang 3-D:  [[[1 2 3]
  [4 5 6]]

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

Mảng nhiều chiều :

Mảng nhiều chiều là một mảng số chiều từ 2 chiều trở lên được gọi là mảng nhiều chiều.

Để tạo một mảng nhiều chiều, bạn có thể định nghĩa số chiều bằng các sử dụng đối số ndmin.

Ví dụ

import numpy as np

# mảng nhiều chiều : n-D
arr_n = np.array([1,2,3,4],ndmin=5)
print("Mang 5-D: ",arr_n)
print(arr_n.ndim)

Kết quả :

Mang 5-D:  [[[[[1 2 3 4]]]]]
5

Cách tính số chiều hoặc kích thước của mảng sử dụng Numpy.

Làm thế nào để biết kích thước hoặc số chiều của mảng trong Numpy python ? Numpy sử dụng thuộc tính ndim để số chiều của mảng.

Ví dụ

import numpy as np

arr_3 = np.array([[[1,2,3],[4,5,6]],[[1,2,3],[4,5,6]]])
print("Mang 3-D: ",arr_3)
print(arr_3.ndim)

Kết quả :

Mang 3-D:  [[[1 2 3]
  [4 5 6]]

 [[1 2 3]
  [4 5 6]]]
So chieu:  3