9
Nếu bạn có array = np.array([1,2,3,4])
và bạn có index = np.array([0,1,2])
và bạn muốn xóa các phần tử chỉ mục trong mảng, cách tốt nhất để làm điều này mà không lặp là gì?cách pythonic để xóa các phần tử khỏi mảng numpy
+1 Nhưng đối đầy đủ, trong [câu hỏi này khác] (http://stackoverflow.com/a/15706171/110026), @askewchan phát hiện ra rằng việc xây dựng một boolean mặt nạ nhanh hơn sử dụng 'np.delete', tức là' mask = np.ones (mảng.shape, dtype = np.bool); mặt nạ [index] = False; smaller_array = mảng [mặt nạ] '. – Jaime
Sự khác biệt về tốc độ hầu như biến mất, vì xóa sẽ cơ bản là một cách viết tắt cho điều đó trong 1.8. và sau đó (với một số đường dẫn nhanh hơn cho các lát nhỏ hơn và các số nguyên đơn). Cho đến khi lâu hơn một chút có một số khác biệt cho ra khỏi ràng buộc/tiêu cực hoặc boolean chỉ số mặc dù. – seberg