How to extract matrix elements using index pairs?

9 Ansichten (letzte 30 Tage)
Wendy Song
Wendy Song am 5 Apr. 2018
Kommentiert: Wendy Song am 5 Apr. 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.

Akzeptierte Antwort

Birdman
Birdman am 5 Apr. 2018
r=[1 2];
c=[1 2];
A(sub2ind(size(A),r,c))

Weitere Antworten (0)

Kategorien

Mehr zu Matrix Indexing finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by