Numpy 如何使np.where适用于float数据类型 a=np.array([0.5,1.5,2.5]) np.式中(a

Numpy 如何使np.where适用于float数据类型 a=np.array([0.5,1.5,2.5]) np.式中(a,numpy,Numpy,我得到了(数组([0,1],dtype=int64),)。如何获取数组([0.5,1.5])?让我们将其分解 a

我得到了(数组([0,1],dtype=int64),)。如何获取数组([0.5,1.5])?

让我们将其分解

a<2
给出了
数组([True,True,False])
,因为它按元素测试条件

np.其中(a<2)
给出了索引,其中
a<2
的结果为真。
第一个和第二个元素为真,因此它给出了索引数组
[0,1]

您可以使用这些索引对数组进行索引:

a[np.其中(a<2)]
但是,正如@Psidom所说,这是不必要的,因为您可以直接使用

a[a<2]

这将是最具python风格的方式。

a[a<2]
,不需要
np.where
a=np.array([0.5, 1.5, 2.5])
np.where(a < 2)