Filter an array in Python3 / Numpy and return indices(过滤Python3/Numpy中的数组和返回索引)
本文介绍了过滤Python3/Numpy中的数组和返回索引的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
Python3/Numpy中有没有什么内置函数可以过滤数组并返回剩余元素的索引?类似于numpy.argsorte的排序。我的过滤同时设置了最小阈值和最大阈值-必须过滤掉最小/最大值以下/以上的所有值。
我看过Python的函数filter,但看不到使用它提取索引的方法。
编辑:答案中有很多有用的信息,谢谢!
正如@SvenMarnach指出的,掩码就足够了:
mask = (min_value < a) & (a < max_value)
现在我必须将此掩码应用于与a
形状相同的其他数组,但不确定最佳方法是什么.
推荐答案
可以通过
获取一维数组a
中大于min_value
和小于max_value
的元素的索引
indices = ((min_value < a) & (a < max_value)).nonzero()[0]
通常您不需要这些索引,但是您可以更有效地使用掩码
mask = (min_value < a) & (a < max_value)
此掩码是与a
形状相同的布尔数组。
编辑:如果您有一个与a
形状相同的数组b
,您可以用
mask
中True
条目对应的b
元素
b[mask]
这篇关于过滤Python3/Numpy中的数组和返回索引的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:过滤Python3/Numpy中的数组和返回索引
基础教程推荐
猜你喜欢
- 合并具有多索引的两个数据帧 2022-01-01
- 哪些 Python 包提供独立的事件系统? 2022-01-01
- 症状类型错误:无法确定关系的真值 2022-01-01
- 使用 Google App Engine (Python) 将文件上传到 Google Cloud Storage 2022-01-01
- 使 Python 脚本在 Windows 上运行而不指定“.py";延期 2022-01-01
- 如何在Python中绘制多元函数? 2022-01-01
- 如何在 Python 中检测文件是否为二进制(非文本)文 2022-01-01
- 将 YAML 文件转换为 python dict 2022-01-01
- 使用Python匹配Stata加权xtil命令的确定方法? 2022-01-01
- Python 的 List 是如何实现的? 2022-01-01