如果我有以下矩阵:
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'还只知道行和列的值。我该怎么做?
答案 0 :(得分:3)
您可以使用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')
答案 1 :(得分:2)
如果您的意思是搜索“c”:
numpy.where(ar == 'c')
答案 2 :(得分:1)
ar = [['0', '1', '2', '3'],
['1', 'a', 'b', 'b'],
['2', 'b', 'c', 'd']]
print(ar[2][2])
以上内容仅用于访问第2列第2行中的“c”,如果您想访问整个列,则需要:
for i in range(0, 3):
print(ar[2][i])