2013-04-26 2 views
0

У меня есть два вектора одинаковой длины M и N. Значения векторов представляют индексы другой матрицы A, так что соответствующие индексы в векторе M и N составляют пары индексов А.Поиск определенных значений индексов в матрице

к примеру у меня есть матрицы

M=[1 2 3 4] и N=[5 6 7 8]

Я хотел бы найти значения удельных показателей в матрице а и хранить их в другой вектор I, как это:

I = [A(1,5) A(2,6) A(3,7) A(4,8)] 

Как это можно сделать?

+1

это имеет здесь уже много раз спрашивали. Может ли кто-нибудь помочь мне найти дубликаты? – Amro

+0

@Amro Вы правы, есть несколько вопросов с подобной проблемой. Однако нет ни одного точного дубликата, который можно найти при простом поиске. –

ответ

2

Вы можете конвертировать их в linear indices используя sub2ind, а затем использовать эти линейные индексы индексировать A:

ind = sub2ind(size(A), M(:), N(:)); 
I = A(ind); 

Примечание Я пошел M(:) как это гарантирует, что M будет вектор-столбец

Смежные вопросы