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中从Azure BLOB存储中读取文件 2022-01-01
 - 在同一图形上绘制Bokeh的烛台和音量条 2022-01-01
 - 使用大型矩阵时禁止 Pycharm 输出中的自动换行符 2022-01-01
 - PANDA VALUE_COUNTS包含GROUP BY之前的所有值 2022-01-01
 - 无法导入 Pytorch [WinError 126] 找不到指定的模块 2022-01-01
 - 修改列表中的数据帧不起作用 2022-01-01
 - PermissionError: pip 从 8.1.1 升级到 8.1.2 2022-01-01
 - Plotly:如何设置绘图图形的样式,使其不显示缺失日期的间隙? 2022-01-01
 - 求两个直方图的卷积 2022-01-01
 
    	
    	
    	
    	
    	
    	
    	
    	
				
				
				
				