在Python中的2个多维数组中查找数组的索引

Charlienoob

我有一个数组

v = (x,y,z)

和两个多维数组

l = (a,b,c),(d,e,f)

r = (g,h,i),(l,m,n),(x,y,z).

我想知道索引v是在第一个还是第二个多维数组中。我尝试过,numpy.where(v==l)[0][0]但返回:

索引0超出尺寸0的轴0的范围。

仅在我知道必须在索引中搜索索引的矩阵之前起作用,但是我没有。谢谢

如果我想知道索引和包含它的数组?

阿什维尼乔杜里(Ashwini Chaudhary)

定义一个函数,该函数接受要搜索的项目以及要在其中搜索的数组的列表,并使用循环在每个数组中查找该项目。使用异常处理来捕获IndexError

>>> import numpy as np
>>> v = np.array([[1, 2, 3]])
>>> r = np.array([[1, 2, 3], [0, 9, 8], [2, 4, 4]])
>>> l = np.array([[4, 5, 6], [7, 8, 9]])
def get_index(seq, *arrays):
    for array in arrays:
        try:
            return np.where(array==seq)[0][0]
        except IndexError:
            pass
...         
>>> get_index(v, r, l)
0
>>> get_index(np.array([7, 8, 9]), r, l)
1

None如果在任何数组中都找不到该项目,则将得到输出。

更新:

如果还需要名称,则在字典中传递数组:

 def get_index(seq, **arrays):
    for name, array in arrays.items():
        try:
            return name, np.where(array==seq)[0][0]
        except IndexError:
            pass
...         
>>> get_index(v, **dict(r=r, l=l))
('r', 0)
>>> get_index(np.array([7, 8, 9]), **dict(r=r, l=l))
('l', 1)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Python中的2个多维数组中查找数组的索引

来自分类Dev

在多维数组中查找最后出现的索引

来自分类Dev

从numpy中另一个多维数组中的2D索引数组创建多维数组

来自分类Dev

如何在Lodash中为谓词查找索引多维数组?

来自分类Dev

如何在基于索引的多维数组中查找值

来自分类Dev

如何通过 JavaScript/JQuery 在多维数组中查找元素的索引

来自分类Dev

numpy数组中的多维索引

来自分类Dev

Python使用数组元素作为多维数组中的索引

来自分类Dev

多维数组到php中的索引数组

来自分类Dev

在多维数组中查找重复的子数组

来自分类Dev

在多维数组中查找子数组

来自分类Dev

Python:匹配2个不同长度数组并在较大数组中查找索引的有效方法

来自分类Dev

Python根据条件查找数组中的索引

来自分类Dev

查找某项是否在Python多维数组中的较低维度中

来自分类Dev

在数组中查找索引

来自分类Dev

在JavaScript中的另一个多维数组中查找数组

来自分类Dev

数组中的多维数组

来自分类Dev

多维数组PHP中缺少索引

来自分类Dev

在Fortran中对多维数组进行线性索引

来自分类Dev

Numpy多维数组中索引的顺序

来自分类Dev

numpy中的多维布尔数组索引

来自分类Dev

如何在CouchDB中索引多维数组

来自分类Dev

索引多维数组中的重复项

来自分类Dev

索引多维数组中的重复项

来自分类Dev

R 中多维数组的索引,如 Matlab

来自分类Dev

Python:在另一个数组(包括重复数组)中查找数组所有元素的索引

来自分类Dev

在多维数组中查找重复值

来自分类Dev

在C多维数组中查找水平对

来自分类Dev

PHP-在多维数组中查找键

Related 相关文章

热门标签

归档