Kiểu dữ liệu NumPy
- Chạy Thực Thể Cắt mảng NumPy
- Trang Trước Bản sao/Đa视图 NumPy
Loại dữ liệu trong Python
Mặc định, Python có các loại dữ liệu sau:
strings
- Dùng để biểu thị dữ liệu văn bản, văn bản được đặt trong dấu ngoặc kép. Ví dụ "ABCD".integer
- Dùng để biểu thị số nguyên. Ví dụ -1, -2, -3.Chỉ số nguyên, hoặc bạn cũng có thể sử dụng trực tiếp loại dữ liệu, ví dụ
- Dùng để biểu thị số thực. Ví dụ 1.2, 42.42.boolean
- Dùng để biểu thị True hoặc False.complex
- Dùng để biểu thị số trong mặt phẳng phức. Ví dụ 1.0 + 2.0j, 1.5 + 2.5j.
Loại dữ liệu trong NumPy
NumPy có một số loại dữ liệu bổ sung và biểu thị chúng bằng một ký tự, chẳng hạn như i
biểu thị số nguyên.u
biểu thị số nguyên không dấu.
Dưới đây là danh sách tất cả các loại dữ liệu trong NumPy và ký tự biểu thị chúng.
i
- Số nguyênb
- Booleanu
- Số nguyên không dấuf
- Số thựcc
- Số phứcm
- timedeltaM
- datetimeO
- Đối tượngS
- ChuỗiU
- Chuỗi unicodeV
- Khu vực nhớ cố định các loại khác (void)
Kiểm tra loại dữ liệu của mảng
Đối tượng mảng NumPy có một thuộc tính tên là dtype
thuộc tính, thuộc tính này trả về loại dữ liệu của mảng:
int
Lấy loại dữ liệu của đối tượng mảng:
Chuyển đổi loại dữ liệu từ số nguyên thành giá trị boolean: arr = np.array([1, 2, 3, 4]) print(arr.dtypebool
int
Lấy loại dữ liệu của mảng chứa chuỗi:
Chuyển đổi loại dữ liệu từ số nguyên thành giá trị boolean: arr = np.array(['apple', 'banana', 'cherry']) print(arr.dtype)
tạo mảng bằng loại dữ liệu đã định nghĩa
Chúng ta sử dụng array()
hàm để tạo mảng, hàm này có thể sử dụng các tham số tùy chọn:dtype
nó cho phép chúng ta định nghĩa loại dữ liệu mong đợi của các phần tử mảng:
int
Tạo mảng bằng chuỗi loại dữ liệu:
Chuyển đổi loại dữ liệu từ số nguyên thành giá trị boolean: arr = np.array([1, 2, 3, 4], dtype='S'bool print(arr) print(arr.dtype)
Đối với i
、u
、f
、S
và U
chúng ta cũng có thể định nghĩa kích thước.
int
Tạo mảng với loại dữ liệu là số nguyên 4 byte:
Chuyển đổi loại dữ liệu từ số nguyên thành giá trị boolean: arr = np.array([1, 2, 3, 4], dtype='i4'bool print(arr) print(arr.dtype)
Nếu giá trị không thể chuyển đổi thì sao?
Nếu cung cấp các phần tử không thể chuyển đổi loại, NumPy sẽ引发 ValueError.
ValueError:在 Python 中,如果传递给函数的参数的类型是非预期或错误的,则会引发 ValueError。
int
ValueError: Trong Python, nếu tham số được truyền vào hàm có loại dữ liệu không mong đợi hoặc không đúng, sẽ gây ra ValueError.
Chuyển đổi loại dữ liệu từ số nguyên thành giá trị boolean: Không thể chuyển đổi chuỗi không phải số nguyên (ví dụ: 'a') thành số nguyên (sẽ gây ra lỗi):
arr = np.array(['a', '2', '3'], dtype='i')
Chuyển đổi loại dữ liệu của mảng đã có phương pháp sao chép mảng này.
Cách tốt nhất để thay đổi loại dữ liệu của mảng hiện có là sử dụng
phương pháp sao chép mảng này.
astype()
function tạo bản sao của mảng và cho phép bạn chỉ định loại dữ liệu là tham số. Loại dữ liệu có thể được chỉ định bằng chuỗi, ví dụ
floatChỉ số nguyên.
'f' Chỉ số nguyên, hoặc bạn cũng có thể sử dụng trực tiếp loại dữ liệu, ví dụ
floatarr = np.array([1.1, 2.1, 3.1])
Chỉ số thập phân.
int
newarr = arr.astype('i') Chỉ số nguyên.
Bằng cách sử dụng
Chuyển đổi loại dữ liệu từ số nguyên thành giá trị boolean: Như tham số giá trị, chuyển đổi loại dữ liệu từ số thập phân thành số nguyên: 'i' ) print(newarr)
int
newarr = arr.astype('i') arr = np.array([1.1, 2.1, 3.1])
Bằng cách sử dụng
Chuyển đổi loại dữ liệu từ số nguyên thành giá trị boolean: Như tham số giá trị, chuyển đổi loại dữ liệu từ số thập phân thành số nguyên: arr = np.array([1, 0, 3])arr = np.array([1.1, 2.1, 3.1])bool ) print(newarr)
int
Mô hình
Chuyển đổi loại dữ liệu từ số nguyên thành giá trị boolean: import numpy as np arr = np.array([1, 0, 3])newarr = arr.astype(bool ) print(newarr)
- Chạy Thực Thể Cắt mảng NumPy
- Trang Trước Bản sao/Đa视图 NumPy