您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

从numpy数组中提取不在索引列表中的元素

从numpy数组中提取不在索引列表中的元素

In [170]: a = np.array([0.2, 5.6, 88, 12, 1.3, 6, 8.9]) In [171]: idx=[1,2,5] In [172]: a[idx] Out[172]: array([ 5.6, 88. , 6. ]) In [173]: np.delete(a,idx) Out[173]: array([ 0.2, 12. , 1.3, 8.9])

delete比实际需要更广泛,根据输入使用不同的策略。我认为在这种情况下,它使用布尔掩码方法(时序应相似)。

In [175]: mask=np.ones_like(a, bool)
In [176]: mask
Out[176]: array([ True,  True,  True,  True,  True,  True,  True], dtype=bool)
In [177]: mask[idx]=False
In [178]: mask
Out[178]: array([ True, False, False,  True,  True, False,  True], dtype=bool)
In [179]: a[mask]
Out[179]: array([  0.2,  12. ,   1.3,   8.9])
其他 2022/1/1 18:43:09 有376人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶