Computer >> Máy Tính >  >> Lập trình >> Python

Thay đổi kiểu dữ liệu của mảng numpy đã cho

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