給定一個numpy數組,我想根據不等式替換它的值。例如,給定根據不等式替換numpy數組中的值
x=np.array([0.3,7,8,-5.5,1,0.1])
我希望替換是小於0 0,那些0和5之間將由1被替換的值,其餘的將被替換爲2。因此,我希望得到:
x=np.array([1,2,2,0,1,1])
我能做到這一點與pandas.cut
如下:
pandas.cut(pandas.DataFrame(x).iloc[:,0],[-np.inf,0,5,np.inf],labels=[0,1,2],right=False)
,但我不知道是否有一種更直接的方式來做到這一點使用numpy的本身。請注意,我可以有3個以上的類別,這就是爲什麼我要找更系統的行爲,其行爲與pandas.cut
類似。
偉大的解決方案,謝謝! –