Есть ли простой способ получить доступ к элементам массива по (строковому) ключу, а также по индексу? Предположим, у меня есть такой массив:
x = array([[0, 4, 9, 1],
[1, 3, 9, 1],
[3, 5, 6, 2],
[6, 2, 7, 5]])
Я ищу способ указать набор ключей (например, ('A', 'C', 'G', 'T')
), которые можно использовать в качестве псевдонима для индекса. Так что x['A', 'C']
, x[0,'C']
, x['A', 1]
и x[0,1]
все возвращают значение 4; x['G', :]
совпадает с x[2, :]
и т. Д. Я знаю, что это может быть достигнуто путем создания подкласса массива numpy и переопределения __getitem__
и __setitem__
, но создание подклассов очень быстро усложняется, поэтому мне было интересно, существует ли более простой или лучший способ сделать это.