Tôi có một numpy
mảng như:NumPy mảng, thay đổi các giá trị mà không phải là trong một danh sách các chỉ số
a = np.arange(30)
tôi biết rằng tôi có thể thay thế các giá trị tọa lạc tại vị trí indices=[2,3,4]
sử dụng ví dụ lập chỉ mục ưa thích:
a[indices] = 999
Nhưng cách thay thế các giá trị tại các vị trí không nằm trong indices
? Sẽ là một cái gì đó như dưới đây?
a[ not in indices ] = 888
Cảm ơn bạn!
tại sao không sử dụng 'np.ones_like' – jamylak
@jamylak - bởi vì tôi cần phải nhìn up tài liệu trên 'np.ones_like', nhưng tôi biết cách' np.ones' làm việc ;-) – mgilson
Trên một lưu ý phụ, bạn có thể thay thế vài dòng cuối cùng của bạn bằng một cuộc gọi duy nhất tới 'numpy.where' (đây là trường hợp chính nơi nó thực sự hữu ích). Ví dụ. 'a = np.where (mặt nạ, 888, 999)'. –