python - 如何从 numpy 二维数组中找到大于特殊数字的元素索引?

标签 python arrays numpy indexing find

我想从 numpy 二维数组中找到大于 2 的元素的索引。

像这样

import numpy as np
a = np.array([[1,2,3],[4,5,6]])

#  find indices of element that bigger than 2
# result  = [[0,2],[[1,0],[1,1],[1,2]]

最佳答案

您可以使用np.where(),它将为您提供元组模式(单独轴)中的预期索引:

In [6]: np.where(a>2)
Out[6]: (array([0, 1, 1, 1]), array([2, 0, 1, 2]))

或者直接使用np.argwhere():

In [5]: np.argwhere(a>2)
Out[5]: 
array([[0, 2],
       [1, 0],
       [1, 1],
       [1, 2]])

关于python - 如何从 numpy 二维数组中找到大于特殊数字的元素索引?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41136864/

相关文章:

python - 如何在列表列表中查找字符?

Python 读取 Tick Data Pandas

python - Numpy "fill"方法是如何实现的?

python - Peewee ORM - 具有多对多关系的过滤结果

arrays - 将数组与引用数组中的值匹配 - Perl

ruby - 根据矩阵形状进行坐标转换

python - 如何控制 Numpy 中空数组的维数

python - pandas:将多索引数据帧与系列相乘

python - 切片时的 if 语句

python - 如何测试或模拟 "if __name__ == ' __main_ _'"内容