Tôi cần một phương pháp nhanh, tốt để tìm 10 giá trị thực nhỏ nhất từ mảng có nhiều giá trị nan
và/hoặc inf
.Lấy các giá trị N nhỏ nhất từ mảng numpy bỏ qua inf và nan
Tôi cần phải xác định các chỉ số của các giá trị thực nhỏ nhất này, chứ không phải chính các giá trị đó.
Tôi đã tìm thấy các chức năng argmin
và nanargmin
từ không có nhiều. Họ không thực sự nhận được công việc làm vì tôi cũng muốn chỉ định nhiều hơn 1 giá trị, ví dụ như tôi muốn có 100 giá trị nhỏ nhất. Cả hai đều trả về giá trị -inf
là giá trị nhỏ nhất khi nó có mặt trong mảng.
heapq.nsmallest
loại công trình, nhưng nó cũng trả về giá trị nan
và -inf
làm giá trị nhỏ nhất. Ngoài ra nó không cho tôi những chỉ số mà tôi đang tìm kiếm.
Mọi trợ giúp ở đây sẽ được đánh giá cao.
lặp qua/sao chép mảng, chuyển đổi tất cả các nans và -inf thành inf chạy hàm của bạn để nhận giá trị N nhỏ nhất, chuyển đổi lại/hoàn nguyên về bản sao cũ? ngớ ngẩn hacky, nhưng hmm ... – Patashu
cảm ơn sự giúp đỡ, đó là những gì tôi sẽ phải làm gì nếu tôi không thể có được một câu trả lời đơn giản hơn. –