[[11. 5.]
[24. 6.]
[39. 12.]
[14. 1.]
[25. 12.]]
这是我的矩阵,现在我想对它应用以下条件:10<a<15但仅限于第一列
因此,我想要一个包含索引的数组[0.3.]
我用";其中";失败,numpy将其应用于两列
第一列是a[:, 0]
。np.flatnonzero
是np.nonzero
的一个版本(它是只有一个参数的where
(,它返回一个平面数组,而不是一个索引元组。
你可以做一些类似的事情
mask = (10 < a[:, 0]) & (a[:, 0] < 15)
idx = np.flatnonzero(mask)
另一种方式是
idx, = np.nonzero(mask)
甚至
idx, = np.where(mask)
注意最后两个例子中idx
后面的逗号,它触发了参数拆包。