Skip to main content
 首页 » 编程设计

python矩阵搜索

2025年05月04日17duanxz

如果我有以下矩阵:

import numpy 
 
ar = numpy.array((('0','1','2','3'), ('1','a','b','b'), ('2','b','c','d')), str) 
print(ar) 

输出:

[['0' '1' '2' '3'] 
 ['1' 'a' 'b' 'b'] 
 ['2' 'b' 'c' 'd']] 

我想获取满足行和列条件的值。标题行是列(可以是字符串),左边的第一列是所有行(可以是字符串)。因此,如果列为“2”,行为“2”,我将得到“c”。我不知道“c”,但只知道行和列的值。我该怎么做?

请您参考如下方法:

你可以使用numpy.where:

In [7]: numpy.where(ar == 'c') 
Out[7]: (array([2]), array([2])) 

和:

In [8]: ar[numpy.where(ar == 'c')] 
Out[8]:  
array(['c'],  
      dtype='|S1')