How to extract matrix elements using index pairs?

11 visualizaciones (últimos 30 días)
Wendy Song
Wendy Song el 5 de Abr. de 2018
Comentada: Wendy Song el 5 de Abr. de 2018
Might be a really basic question: Suppose I have a matrix:
>> A = magic(3)
A =
8 1 6
3 5 7
4 9 2
I want to extract the elements A(1,1) and A(2,2). Is there a command to call the elements all at once by specifying a list of index pairs? Something like:
A((1,1);(2,2))
so that the output would be
ans =
8
5
I tried
A([1;2],[1;2])
A([1 1; 2 2])
but they both returned a matrix instead of a vector.

Respuesta aceptada

Birdman
Birdman el 5 de Abr. de 2018
r=[1 2];
c=[1 2];
A(sub2ind(size(A),r,c))

Más respuestas (0)

Categorías

Más información sobre Matrix Indexing en Help Center y File Exchange.

Productos

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by