Khi trục không phải là Không có, chức năng này thực hiện tương tự như lập chỉ mục “ưa thích” [lập chỉ mục mảng bằng cách sử dụng mảng]; . Một cuộc gọi như np.take[arr, indices, axis=3]
tương đương với arr[:,:,:,indices,...]
Được giải thích mà không cần lập chỉ mục ưa thích, điều này tương đương với cách sử dụng sau đây của , đặt mỗi ii
,
Ni, Nk = a.shape[:axis], a.shape[axis+1:] for ii in ndindex[Ni]: for kk in ndindex[Nj]: out[ii + s_[...,] + kk] = a[ii + s_[:,] + kk][indices]0 và
Ni, Nk = a.shape[:axis], a.shape[axis+1:] for ii in ndindex[Ni]: for kk in ndindex[Nj]: out[ii + s_[...,] + kk] = a[ii + s_[:,] + kk][indices]1 thành một bộ chỉ số
Ni, Nk = a.shape[:axis], a.shape[axis+1:] Nj = indices.shape for ii in ndindex[Ni]: for jj in ndindex[Nj]: for kk in ndindex[Nk]: out[ii + jj + kk] = a[ii + [indices[jj],] + kk]Thông số . a array_like [Ni…, M, Nk…]
Mảng nguồn
chỉ số array_like [Nj…]Các chỉ số của các giá trị để trích xuất
Mới trong phiên bản 1. 8. 0
Cũng cho phép vô hướng cho các chỉ số
trục int, tùy chọnTrục để chọn các giá trị. Theo mặc định, mảng đầu vào phẳng được sử dụng
ra ndarray, tùy chọn [Ni…, Nj…, Nk…]Nếu được cung cấp, kết quả sẽ được đặt trong mảng này. Nó phải có hình dạng và kiểu chữ phù hợp. Lưu ý rằng out luôn được đệm nếu mode=’raise’;
chế độ {‘raise’, ‘wrap’, ‘clip’}, tùy chọnChỉ định cách các chỉ số ngoài giới hạn sẽ hoạt động
'raise' - tăng lỗi [mặc định]
'quấn' - quấn quanh
'clip' - clip vào phạm vi
Chế độ 'clip' có nghĩa là tất cả các chỉ mục quá lớn được thay thế bằng chỉ mục giải quyết phần tử cuối cùng dọc theo trục đó. Lưu ý rằng điều này vô hiệu hóa lập chỉ mục với số âm
Trả về . ra ndarray [Ni…, Nj…, Nk…]Mảng trả về có cùng kiểu với một
Xem thêm
Lấy các phần tử bằng cách sử dụng mặt nạ boolean
phương pháp tương đương
Lấy các phần tử bằng cách khớp mảng và mảng chỉ số
ghi chú
Bằng cách loại bỏ vòng lặp bên trong trong mô tả ở trên và sử dụng để xây dựng các đối tượng lát cắt đơn giản, có thể được thể hiện dưới dạng áp dụng lập chỉ mục ưa thích cho từng lát cắt 1 chiều
Danh sách các điều kiện xác định mảng nào trong danh sách lựa chọn mà các phần tử đầu ra được lấy. Khi nhiều điều kiện được thỏa mãn, điều kiện đầu tiên gặp phải trong condlist được sử dụng
danh sách lựa chọn danh sách ndarrayDanh sách các mảng mà các phần tử đầu ra được lấy. Nó phải có cùng độ dài với condlist
mặc định vô hướng, tùy chọnPhần tử được chèn vào đầu ra khi tất cả các điều kiện đánh giá là Sai
Trả về . đầu ra ndarrayĐầu ra tại vị trí m là phần tử thứ m của mảng trong danh sách lựa chọn trong đó phần tử thứ m của mảng tương ứng trong danh sách condlist là True