Mảng Numpy hỗ trợ rất nhiều kiểu dữ liệu ngoài các kiểu dữ liệu gốc của python. Sau khi một mảng được tạo, chúng ta vẫn có thể sửa đổi kiểu dữ liệu của các phần tử trong mảng, tùy thuộc vào nhu cầu của chúng ta. Hai phương thức được sử dụng cho mục đích này là array.dtype và array.astype
array.dtype
Phương thức này cung cấp cho chúng ta kiểu dữ liệu hiện có của các phần tử trong mảng. Trong ví dụ dưới đây, chúng tôi khai báo một mảng và tìm các kiểu dữ liệu của nó.
Ví dụ
import numpy as np # Create a numpy array a = np.array([21.23, 13.1, 52.1, 8, 255]) # Print the array print(a) # Print the array dat type print(a.dtype)
Đầu ra
Chạy đoạn mã trên cho chúng ta kết quả sau -
[ 21.23 13.1 52.1 8. 255. ] float64
array.astype
Phương thức này chuyển đổi mảng hiện có thành một mảng mới với các kiểu dữ liệu mong muốn. Trong ví dụ dưới đây, chúng tôi lấy mảng đã cho và chuyển đổi nó thành nhiều kiểu dữ liệu đích.
Ví dụ
import numpy as np # Create a numpy array a = np.array([21.23, 13.1, 52.1, 8, 255]) # Print the array print(a) # Print the array dat type print(a.dtype) # Convert the array data type to int32 a_int = a.astype('int32') print(a_int) print(a_int.dtype) # Convert the array data type to str a_str = a.astype('str') print(a_str) print(a_str.dtype) # Convert the array data type to complex a_cmplx = a.astype('complex64') print(a_cmplx) print(a_cmplx.dtype)
Đầu ra
Chạy đoạn mã trên cho chúng ta kết quả sau -
[ 21.23 13.1 52.1 8. 255. ] float64 [ 21 13 52 8 255] int32 ['21.23' '13.1' '52.1' '8.0' '255.0'] <U32 [ 21.23+0.j 13.1 +0.j 52.1 +0.j 8. +0.j 255. +0.j] complex64